Cloud computing utilizes the framework that has been built over the past two decades for hosting extensive distributed network applications on the Internet. The cloud enables the consolidation and allocation of resources based on demand. Cloud architecture enables the integration of software operating on virtualized hardware across several locations to deliver a user-centric service on demand. The distinctive feature that distinguishes the architectural needs of cloud computing systems from the general description of an n-tiered Internet application is the specific combination of abstraction and metered service.
An organization can either establish a cloud within its own infrastructure or outsource it to another data center. Although physical resources can be found in a cloud, virtualized resources are more commonly used due to their ease of modification and optimization.
Composability
Cloud-based applications typically possess the characteristic of being constructed from a set of components, which is known as composability. A composable system utilizes components to provide services that can be customized for a specific purpose using standardized elements. A composable component must possess the following characteristics:
Modular: A modular unit is a self-contained and independent component that is cooperative, reusable, and replaceable.
Stateless: A transaction is conducted independently of other transactions or requests.
Infrastructure
The majority of major Infrastructure as a Service (IaaS) providers depend on virtual machine technologies to supply servers capable of running applications. The diagram illustrates the specific segment of the cloud computing architecture that is designated as the "server."
The diagram depicts the API as shaded in gray to indicate that it is an optional component that is not usually included with the server. The VMM component, often known as a hypervisor, is the Virtual Machine Monitor. This software is responsible for enabling several operating systems to operate independently in their own allocated memory and handles input/output operations for the virtual machines.
Platforms
A cloud platform is a software layer that enables the creation of more advanced services. Various Platform as a Service (PaaS) vendors offer services designed to give developers with diverse capabilities. Platforms encompass almost the whole cloud software stack, with the exception of the presentation layer responsible for the user interface. Platforms frequently include a wide range of tools and utilities that assist in the process of designing and deploying applications.
Various vendors offer a range of developer tools that cater to team communication, testing, program performance measurement, attribute analysis, version control, database and web service integration, and storage management. Typically, platforms initiate the process by creating a developer community to provide assistance and support for the tasks performed within the system.
Virtual Appliances
Virtual appliances are applications, such as web servers or database servers, that can be executed on a virtual machine image. Virtual appliances are software programs that are loaded on virtual servers. They are designed to execute on specific machine instances or image types. A virtual appliance is an instance of a platform. Virtual appliances are positioned in the middle of the cloud computing architecture.
Communication Protocols
Cloud computing is a result of services accessible through the Internet that communicate using the standard Internet protocol suite, which is supported by the HTTP and HTTPS transfer protocols. Other protocols and standards in the cloud utilize any of these two transport protocols to format data or conversations into packets.
Over the years, various client/server protocols have been utilized for distributed networking to provide interprocess communication (IPC) between processes. RPC systems such as DCOM, Java RMI, and CORBA aim to address the challenge of interacting with services and handling transactions on a network that lacks persistent connections. XML-RPC was the first RPC technology that was specifically designed for the web. It utilizes XML data, which is platform-independent, to encode program calls. These calls are then delivered over HTTP, the widely used networking transport protocol.
Applications
A significant portion of the challenging development work focused on transforming a series of stateless transactions into stateful ones in order to enhance the functionality of the Web for commercial purposes. The purpose of developing transaction servers, message queuing servers, and other middleware is to address this issue.
Cloud computing is not immune to this issue, and it actually exacerbates the problem by not only rendering transactions stateless, but also by virtualizing resources, resulting in transactions always taking place in physically distinct locations. Cloud computing employs a range of mechanisms to address these problems, with two key notions being of utmost significance:
The concept of orchestration refers to the ability to arrange process flow as a service.
The utilization of a service bus that governs cloud components.
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.