Cloud computing services three modes: IaaS, PaaS, SaaS [rpm]

   "Cloud" is a metaphor of the Internet "cloud computing" is actually use the internet to access the storage or server running the reference ports, data, or services.

  Any offer their services on the Internet companies can be called cloud computing company. In fact, from the perspective of three layers of cloud computing user experience, namely, Infrastructure (infrastructure) -as-a-Service, Platform (platform) -as-a-Service, Software (Software) -as-a-Service. Infrastructure At the bottom, in the middle of the platform, the software at the top. Some other "soft" layer on top of these layers can be added.

IaaS (Infrastructure as a Service), namely infrastructure as a service

  Role: By IaaS this mode, the user can obtain a virtual machine or storage resources he needs from suppliers to load related applications, while those tedious management infrastructure will be processed by IaaS providers. IaaS through it on the face of the virtual machine supports a large number of applications. IaaS main user is a system administrator.

  Products: The main products include: Amazon EC2, Linode, Joyent, Rackspace, IBM Blue Cloud and Cisco UCS and so on.

  Features:

    Resource abstraction: better physical resource scheduling and management method using abstract resource (e.g., resource pool).

    Resource Monitoring: By monitoring resources to ensure high-efficiency operation of the foundation.

    Load management: load management, not only make the application deployed on transport infrastructure better able to respond to emergency situations, but also to make better use of system resources.

    Data Management: cloud computing, the integrity, reliability and manageability of the data is a basic requirement for the IaaS.

    Resource Deployment: that is, the entire process from creation to automate resource use.

    Security Management: The main goal of security management is to ensure IaaS infrastructure and resources that can be provided by legally access and use.

    Accounting Management: enables the user through detailed billing management more flexible use of resources.

PaaS (Platform as a Service), platform as a service that is

  Role: By PaaS this mode, the user can easily write on the development platform includes a SDK, documentation and test environment, including applications, but also whether it is in the deployment, or at run time, users do not need to server, management worry about the operating system, network and storage resources, these tedious work by the PaaS vendor is responsible for processing and integration PaaS very alarming rate above, for example, a computer running Google App Engine server can support thousands of applications that is, PaaS is very economical. PaaS main users are developers.

  Products: The main products include: Google App Engine, force.com, heroku and Windows Azure Platform and so on.

  Features:

    Friendly development environment: by providing SDK and IDE and other tools to allow users to perform application development and testing easily locally.

    Rich services: PaaS platform API will be in the form of various services provided to the upper application.

    Automatic resource scheduling: This feature is scalable, it will not only be able to optimize system resources, and can automatically adjust resources to help applications run on which to better cope with bursty traffic.

    Sophisticated monitoring and management: by PaaS can provide management and monitoring of the application layer, for example, where an application running can be observed and specific numerical values ​​(e.g., throughput, and response time) to better measure the operating state of the application, there can be to better billing through accurate metering applications use resources consumed.

SaaS (Software as a Service), that is, software as a service

  Role: via SaaS this mode, users simply connect the network, and through a browser, an application running in the cloud can be used directly, without the need to worry about installation and other similar chores, and eliminates high initial investment in hardware and software. SaaS main face of the ordinary user.

  Product: Salesforce Sales Cloud, Google Apps, Zimbra, Zoho and IBM Lotus Live and so on.

  Features:

    Access anywhere: at any time or any place, as long as connected to the network, users can access the SaaS service.

    Support disclosed protocol: protocol disclosed by supporting (such HTML4 / 5), can be user-friendly.

    Security: SaaS vendors need to provide some security mechanisms, not only to make the user data stored in the cloud in absolute security situation, but also to the client implementation of certain security mechanisms (such as HTTPS) to protect the user.

    Multi-dwelling (Multi-Tenant) mechanism: the mechanism by multi-dwelling, not only economically support a large user base, but also to provide a certain degree of customization to meet the specific needs of the user.

Association between the three

  The main relationship between them can be analyzed from two perspectives: one is the user experience point of view, from this perspective, the relationship between them is independent because they face different types of users. The second is the technical point of view, from this perspective, they are not simple inheritance (SaaS-based PaaS, and PaaS based IaaS), because the first SaaS-based PaaS or may be deployed directly on top of IaaS, PaaS can be built next to on top of IaaS, it can also be built directly on top of the physical resources.

Comparison between IaaS and PaaS

  The main role of PaaS is a development and runtime platform as a service to users, and the main role is to provide IaaS virtual machines or other resources as a service to users. Next, compare the PaaS and IaaS in seven areas:

  1. Development Environment: PaaS basic will provide developers with a set of development and test environments including IDE including, but IaaS main aspects of the user or follow the more familiar set of development environments before, but because before the set and development environment in the cloud integration lacks, it is not very convenient to use.

  2. Supported applications: mainly because IaaS provides virtual machines, virtual machines and general support for multiple operating systems, so the support IaaS range of applications is very broad. But if you want an application can run in a PaaS platform is not an easy task, because not only need to ensure that this application is based on the language of the platform supported, but also to ensure that the application can only call this platform supported by the API If the application calls the platform does not support the API, then the application will need to be modified

  3. Open Standards: Although many IaaS platform there are some private function, but because of OVF and other agreements, making cross-platform IaaS and avoid vendor lock-in which both sides are steadily moving forward. The situation PaaS platform is not optimistic, because both Google's App Engine, Force.com or Salesforce, there are some private API.

  4. Scalability: PaaS platform will automatically adjust resources to help run their applications on to better deal with unexpected traffic. The IaaS platform developers will need to manually adjust the resources to cope.

  5. Consolidation rate and economy: PaaS platform integration rate is very high, such as representatives of Google App Engine PaaS can carry thousands of applications on a single server, while the consolidation of common IaaS platform will not exceed 100 and generally around 10, so that the economy is not as IaaS PaaS.

  6. Billing and supervision: Because PaaS platform in both billing and supervision not only reached the IaaS platform can match the operating system level, for example, CPU and memory usage, etc., but also to achieve the application level, for example, application the response time (response time) or application consumes how many affairs, etc., which will improve the accuracy of billing and management.

  7. Learning curve: it is more close to the top IaaS development and management of applications and existing, rather PaaS above development is likely to need to learn a new language or a new framework, IaaS lower the learning curve.

  Close IaaS
Development environment perfect ordinary
Supported applications limited wide
CURRENCY Short of Slightly better
Scalability Automatic retractable Manual telescopic
Consolidation rate and economy High consolidation ratios and more economical Low rate consolidation
Accounting and regulatory fine simple
Learning curve Slightly difficult low

IaaS and PaaS future PK

  In today's cloud computing environment which, IaaS is very mainstream, both Linode or Amazon EC2 or Joyent, have a place, but with the introduction of Google's App Engine, Salesforce's Force.com or PaaS such as Microsoft's Windows Azure Platform so that PaaS began to emerge. On the future of both, especially the competitive relationship between the two, I think, in the short term, because IaaS model advantages in support of the application and the learning curve in these two areas, in the short term it will make IaaS will become the first choice in the developer, but in the long run, because of the high rate of integration PaaS model enables brought economic challenges can be resolved if the PaaS such as versatility and support the application, it will be the development of alternative IaaS those "new favorite."

  The main relationship between them can be analyzed from two perspectives: one is the user experience point of view, from this perspective, the relationship between them is independent because they face different types of users. The second is the technical point of view, from this perspective, they are not simple inheritance.

Guess you like

Origin www.cnblogs.com/hucheng1997/p/11581028.html