Sei sulla pagina 1di 2

SECTION 7.

1 Native Cloud Applications


The native cloud applications start with two fundamental composite patterns. A two-tier cloud
application (290) subsumes user interface component (175), processing component (180), and
data access component (188) functionality in one application component that is scaled-out
among cloud resources

Native cloud applications are primarily developed by keeping cloud computing architecture in
perspective. Although they might be similar to typical software applications, the back-end
computation, scalability and parallel processing are compatible with and support a cloud
infrastructure. Native cloud applications have the following characteristics:

 Massively Parallel: The application should incorporate parallelization techniques


within task execution and data storage.
 Complete Utilization of Cloud Resources: The application should use native cloud APIs
and other procedures to simplify tasks and use most or all available resources.
 Cross Cloud-Paradigm: The application should be easily migrated and deployed within
multiple cloud providers.

Scenario 7.1.1 Two Tier Cloud Application

How can application functionality be separated from data handling to scale them
independently?

Introduction
A Two-tier cloud application implements the distributed application pattern that separates the
data tier from the presentation and business logic tier. A two-tier architecture is a software
architecture in which the presentation layer or interface runs on a client, and a data layer or
data structure gets stored on a server. Separating these two components into different locations
represents a two-tier architecture, as opposed to a single-tier architecture.

By design, a distributed cloud-native application is componentized into loosely-coupled


application components to facilitate independent and automatic provisioning and
decommissioning of application component instances (Fehling, et al., 2014). Given the
distributed nature of cloud resources and elasticity in mind, a cloud application architecture
should allow for separate summarization of easy-to-scale component from the hard-to-scale
component. Data handling functionality is significantly harder to scale than stateless
components because scaled out stateful components have to coordinate stateful information
between instances. One way of separating application functionality from data handling
functionality to allow for independent horizontal scaling is to have a two-tier architecture.
The two-tier cloud application decomposed application functionality into data handling
functionality, provided by one or several storage offerings, and application components
handling presentation and business logic. This separation enables the two tiers to elastically
scale independently with their workloads

Results

Discussion

Variations

Related Patterns

Known Uses

Conclusion

References

Potrebbero piacerti anche