21
Cloud Application Architecture Supervisor: Hadi Salimi [email protected] Presenter: Abdollah Ebrahimi [email protected] Mazandaran University Of Science & Technology January, 2011

Cloud Application Architecture

  • Upload
    kerryn

  • View
    30

  • Download
    1

Embed Size (px)

DESCRIPTION

Cloud Application Architecture. Supervisor: Hadi Salimi [email protected] Presenter: Abdollah Ebrahimi [email protected] Mazandaran University Of Science & Technology. January, 2011. Outline. Sample Architectures: Amazon and SalesForce. What is software architectre ?. - PowerPoint PPT Presentation

Citation preview

Page 1: Cloud Application Architecture

Cloud Application Architecture

Supervisor: Hadi Salimi

[email protected]

Presenter:Abdollah Ebrahimi

[email protected]

Mazandaran University Of Science & Technology

January, 2011

Page 2: Cloud Application Architecture

Cloud Application Architecture 2/20

Outline•What is software architectre?•Characteristics of a cloud service

•The problems with traditional applications•What are Cloud Architectures?

•Architectural Considerations of Cloud Applications

• Sample Architectures: Amazon and SalesForce

Page 3: Cloud Application Architecture

Cloud Application Architecture

What is software architectre?A system architecture defines the basic "structure" of the system High-level modules comprising the major functions of the system.Management and distribution of data.The kind and style of system user interface.what platform(s) will the system run on.

3/20

Page 4: Cloud Application Architecture

Cloud Application Architecture

Zero capital expenditure is necessary to get started.

Characteristics of a cloud serviceThe service is accessible via a web browser or web services API.

4/20

Page 5: Cloud Application Architecture

Cloud Application Architecture

Characteristics of a cloud service(cont.)You pay only for what you use as you use it.

5/20

Page 6: Cloud Application Architecture

Cloud Application Architecture

The problems with traditional applicationsDifficult to get as many machines as an application needs.

Difficult to distribute and coordinate a large-scale job on different machines.

6/20

Page 7: Cloud Application Architecture

Cloud Application Architecture

The problems with traditional applications(cont.)Difficult to provision another machine to recover if one machine fails.

Difficult to autoscale up and down based on dynamic workloads.

Difficult to get rid of all those machines when the job is done.

7/20

Page 8: Cloud Application Architecture

Cloud Application Architecture

Designs of software applications that

What are Cloud Architectures?

Use Internet-accessible on-demand services.

The underlying computing infrastructure is used only when it is needed

Scales up or down elastically based on resource needs.

Draw the necessary resources on-demand (like compute servers or storage)

Relinquish the unneeded resources and often dispose themselves after the job is done.

8/20

Page 9: Cloud Application Architecture

Cloud Application Architecture

Examples of cloud Applications

Processing Pipelines Document processing pipelines Image processing pipelines Video transcoding pipelines Indexing Data mining

Batch Processing SystemsBack-office applications (in financial, insurance or retail sectors)Automated Unit Testing and Deployment Testing.Nightly buildsLog analysis

9/20

Page 10: Cloud Application Architecture

Cloud Application Architecture

Examples of cloud Applications(cont.)WebsitesWebsites that “sleep” at night and auto-scale during the day“Seasonal Websites” - websites that only run during the tax season or the holiday season(Christmas) Instant Websites – websites for conferences or events (Super Bowl, sports tournaments)

10/20

Page 11: Cloud Application Architecture

Cloud Application Architecture

Cloud environments differDesign your application appropriately for the particular environment

Amazon? Microsoft Azure? Google APP? SalesForce?

Different mechanisms to implement applications

(EC2), for instance, delivers empty virtual machines(VMs)

Google and Microsoft provide programming frameworks that transparently scale

11/24

Page 12: Cloud Application Architecture

Cloud Application Architecture

Types of cloud applicationsTraditional apps in the cloud

these applications do not support end-user interactionbut rather work on a set of data and experience transitory loads (such as once-a-month reporting or a onetime processing request).

These applications follow an enterprise architecture model and are designed to meet roughly stable demand.

Synchronous cloud applicationsLarge numbers of users may hit the system in a short durationProvide enough Web servers to handle total traffic.provide enough middleware to manage demand. Provide a data tier that scales. Asynchronous cloud applications

12/20

Page 13: Cloud Application Architecture

Cloud Application Architecture

Architectural Considerations of Cloud Applications

ScaleStart SimpleSplit application functions and couple loosely

13/20

Page 14: Cloud Application Architecture

Cloud Application Architecture

Architectural Considerations of Cloud Applications(cont.)Scale

Network communication

Consider the cluster

14/20

Page 15: Cloud Application Architecture

Cloud Application Architecture

Architectural Considerations of Cloud Applications(Cont.)

FailBuild-in resiliency and fault toleranceDistribute the impact of failureGet back up quicklyData considerationsTest your “doomsday” scenarioBe aware of the real cost of failure

15/20

Page 16: Cloud Application Architecture

Cloud Application Architecture

Considerations to provide a data tier that easily scales

plan your data approach to minimize trips to the database and prevent subsequent calls to the database.set up a caching mechanism between the database itself and the middle tier. consider more sophisticated database uses. You can use replication technology to run multiple copies of a database and keep databases consistent. minimize use of relational database technology and create a file-based data storage mechanism.

16/20

Page 17: Cloud Application Architecture

Cloud Application Architecture

Managing resources in cloudFramework cloud systems (e.g., Microsoft Azure and Google Apps) take care of these tasks for you. They feature a monitoring mechanism that views system load and spawns new instances as required. An infrastructure-based system like Amazon provides Web service calls that can be used to start or stop individual instances.

17/20

Page 18: Cloud Application Architecture

Cloud Application Architecture

Sample Architecture: Amazon

18/20

Page 19: Cloud Application Architecture

Cloud Application Architecture

Sample Architecture: SalesForece.com

19/20

Page 20: Cloud Application Architecture

Cloud Application Architecture

Reese, G. (2009). Cloud application architectures: building applications and infrastructure in the cloud, O'Reilly Media, Inc.

http://searchcloudcomputing.techtarget.com/news/1355051/Choosing-an-application-architecture-for-the-cloud,  Bernard Golden,Choosing an application architecture for the cloud, 2009.

Varia, J. (2008). "Cloud architectures." White Paper of Amazon, jineshvaria. s3. amazonaws. com/public/cloudarchitectures-varia. pdf.

http://www.rpath.com/corp/images/stories/white_papers/WP_ArchitectureForCloudComputing.pdf,Application Architecture for Cloud Computing.

References

20/20

Page 21: Cloud Application Architecture

Cloud Application Architecture

Questions?

21/20