Article: Computer Science

profileSambav_66
cc031.pptx

Learning Objectives

Define and describe the PaaS model.

Describe the advantages and disadvantages of PaaS solutions.

List and describe several real-world PaaS solutions.

List and describe cloud-based database solutions and describe their advantages.

Discuss the development history that led to PaaS.

1

Platform as a Service (PaaS) Defined

Provide a collection of hardware and software resources that developers can use to build and deploy applications within the cloud.

Depending on their needs, developers may use a Windows-based PaaS solution or a Linux-based PaaS.

2

PaaS Advantages

Developers eliminate the need to buy and maintain hardware, and the need to install and manage operating system and database software.

Because the computing resources no longer reside in the data center, but rather in the cloud, the resources can scale on demand and the company can pay for only resources it consumes.

Further, because PaaS eliminates the developers’ need to worry about servers, they can more quickly deploy their web-based solutions.

3

PaaS Disadvantages

Some developers and administrators want finer control over the underlying systems (versions, patch releases/applications, …)

4

Real World: Google App Engine

Google App Engine, sometimes called GAE, is a PaaS solution that lets developers create and host web-based applications that reside and run on services managed by Google.

Like many Google services and offerings, Google App Engine is a free service.

Google App Engine provides platform support for a variety of programming languages, the three most common of which are Java, Python, and Go.

5

Google App Engine Continued

Google App Engine features include the following:

Support for dynamic web pages

Data storage and query support

Load balancing for application scalability

Application program interface (API) support for application-based e-mail through Google services

A local development environment that simulates Google App Engine on the developer’s computer

Support for event scheduling and triggering

An application sandbox that limits access to the underlying operating system

An administrative console for managing applications

6

Real World: Taleo Human-Resources SaaS

7

To achieve wide-scale use, an SaaS solution must have large market potential.

Every business must recruit, hire, train, and compensate employees.

The Taleo cloud-based talent management system provides applications and services to meet company human resources demands.

Google App Engine

8

Evolution to the Cloud

Mainframe Computers

Personal Computers

Local-Area Networks

Internet Service Providers (ISPs)

PaaS

9

Mainframe Computing

Large capital investment for data-center-based computers

Large, expensive disk and tape storage systems that often provided only limited storage capacity

User interface to the system provided through dumb terminals

Limited computer–network interconnectivity

System security maintained through physical security (few users had direct access to the computer hardware)

10

Mainframe Computer

11

Tower-Based Servers

Large physical footprint

Considerable heat generation and power consumption

12

Internet Service Providers (ISPs)

13

ISP Advantages

Reduced cost: The ISP provided the high-speed, high-bandwidth Internet connection, which it shared across several companies.

Less server administration: The ISP managed the servers to which developers uploaded their solutions.

Less hardware to purchase and maintain: The ISP purchased and managed the hardware and managed the infrastructure software, such as the operating system.

14

ISP Advantages Continued

Greater system uptime: Through the use of redundant hardware resources, the ISP provided high system uptime.

Potential scalability: The ISP had the ability to move a high-demand application to a faster bandwidth connection.

15

Blade Computers

Reduced server footprint

Reduced power consumption and heat generation

16

Real World: Force.com PaaS

To extend its cloud capabilities to application developers, Salesforce.com has released the Force.com PaaS.

Originally developed to provide a home for business applications, Force.com now runs applications across most sectors.

17

Benefits of PaaS

By shifting computing resources from an on-site data center to the cloud, PaaS solutions offer:

Lower total cost of ownership: Companies no longer need to purchase and maintain expensive hardware for servers, power, and data storage.

Lower administration overhead: Companies shift the burden of system software administration from in-house administration to employees of the cloud provider.

18

Benefits of PaaS Continued

More current system software: The cloud administrator is responsible for maintaining software versions and patch installations.

Increased business and IT alignment: Company IT personnel can focus on solutions as opposed to server-related issues.

Scalable solutions: Cloud-based solutions can scale up or down automatically based on application resource demands. Companies pay only for the resources they consume.

19

Disadvantages of PaaS

Potential disadvantages of PaaS solutions include:

Concerns about data security: Some companies are hesitant to move their data storage off-site.

Challenges to integrating cloud solutions with legacy software: A company may need to support on-site solutions as well as cloud-based solutions. Communication between the two application types may be difficult to impossible.

Risk of breach by the PaaS provider: If the company providing the PaaS service fails to meet agreed-upon service levels, performance, security, and availability may be at risk, and moving the application may be difficult.

20

Real World: Windows Azure as a PaaS

Microsoft .NET has driven the development of many dynamic web solutions and web services.

Windows Azure is a PaaS running within Microsoft data centers.

Users pay only for the scalable processor resources that they consume.

SQL Azure provides a cloud-based database solution for applications running within Windows Azure.

21

Windows Azure Continued

Windows Azure goes beyond .NET and includes support for Java, PHP, and Ruby. Developers can build and deploy their solutions to Azure using an IDE such as Visual Studio or Eclipse.

Developers can interface to SQL Azure using much of the same code they would use to access a local database.

22

Windows Azure Continued

23

Key Terms

24

References

Jamsa, K. A. (2013). Cloud computing: SaaS, PaaS, IaaS, virtualization, business models, mobile, security and more. Burlington, MA: Jones & Bartlett Learning.

25