cloud application architecture
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 PresentationTRANSCRIPT
Cloud Application Architecture
Supervisor: Hadi Salimi
Presenter:Abdollah Ebrahimi
Mazandaran University Of Science & Technology
January, 2011
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
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
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
Cloud Application Architecture
Characteristics of a cloud service(cont.)You pay only for what you use as you use it.
5/20
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
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
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
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
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
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
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
Cloud Application Architecture
Architectural Considerations of Cloud Applications
ScaleStart SimpleSplit application functions and couple loosely
13/20
Cloud Application Architecture
Architectural Considerations of Cloud Applications(cont.)Scale
Network communication
Consider the cluster
14/20
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
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
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
Cloud Application Architecture
Sample Architecture: Amazon
18/20
Cloud Application Architecture
Sample Architecture: SalesForece.com
19/20
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
Cloud Application Architecture
Questions?
21/20