What is PaaS? Platform-as-a-Service Types Explained - 7 minutes read
What is PaaS? Platform-as-a-Service Types Explained
There's no single PaaS for everyone. Even the definition of this cloud computing service model is quite vague today. Commonly, it is described as a cloud hosting platform with a set of deployment and scaling automation, application management, and DevOps tools that can be run on shared infrastructure or on-premise. Also, PaaS eliminates the complexity of building and maintaining the underlying infrastructure. Let's see how PaaSes differ through the prism of their use cases and supported technologies, and how to determine which one will meet specific needs.
Let's take a closer look and analyze Platform-as-a-Service solutions from several angles:
Today's PaaS vendors bring innovative approaches to application development and their hosting in the cloud by providing various tools built specifically for a particular service. Considering use cases hosted within Platform-as-a-Service solutions, we can break down PaaS offerings into three broad categories: general-purpose, emerging and specialized.
General-purpose platforms are widely chosen for traditional stateful web and N-tier applications thus offering "lift and shift" approach for migrating existing workloads. In addition, this PaaS type is timely expanding with modern technologies that meet the needs of stateless cloud-native applications and microservices, and help to develop new scalable and fault-tolerant services.
EmergingPaaSes bring new approaches to the market. They are commonly used for the development of independent services based on emerging technologies such as serverless, distributed event processing, machine learning frameworks, and others.
Specializedplatforms focus on narrow niche use cases but with high demand on the market. Such products have proved to be effective in different directions including e-commerce, big data processing, and business applications. Often, these platforms are transformed into subcategories such as CMSaaS, eCommerce-as-a-Service, DBaaS, BPaaS, etc.
PaaS solutions are increasingly focused on full-cycle automation of application deployment and delivery processes. This helps developers to focus more on application design and its implementation instead of time-consuming routine or complex tasks, such as server and storage configuration, application and infrastructure security, auto-scaling, load balancing, and so on.
There can be considered three levels of PaaS abstraction: low, mid and high.
Low abstraction level platforms, especially Container-as-a-Service (CaaS) solutions, provide DevOps teams with deep access to infrastructure configurations, as well as granular control over containers and various platform services (e.g. service discovery, logging, security, and load balancing).
Mid-abstraction has the primary goal to let developers code without the headache of infrastructure configuration and management. These platforms give developers access to a wide range of integrated and optimized development frameworks, middleware software stacks, APIs and services completely abstracted from CaaS and IaaS deployment properties. Very often such PaaS solutions provide automatic scaling, load balancing, high-availability, backup, disaster recovery, CI/CD, and other application lifecycle management features out-of-box.
High abstraction solutions are aimed to abstract even coding process to increase the application delivery speed and reduce the cost of innovations. In this case, developers get the entire technology stack but with full abstraction of application, platform and infrastructure levels. It helps to boost the performance of team members and reduce requirements to their technical skills.
In order to automate the application lifecycle management processes, PaaS represents a collection of configuration tools, continuous integration and delivery services, connectors and plugins to popular IDEs.
We can highlight three main approaches in this category:
PaaSes concentrated on providing tools and services for deployment automation offering "one-click" or "git-push" functionality, as well as pre-configured environments for code building, continuous integration and project management tools.
Cloud platforms focused on infrastructure configuration, health and availability monitoring, security and performance checks, cost optimization, as well as offering automation and services related to upgrades and maintenance.
Container management platforms offering functionality to solve challenges of containerization process and implementation of cloud-native approach for existing or new applications. Many PaaS vendors now offer CaaS as an integral component of their products, further reinforcing the view of PaaS as a collection of different DevOps tools.
There are several important points that should be considered before selecting a PaaS for a company.
Above all, analyze whether the chosen PaaS supports the technologies, middleware stacks and programming languages used by development teams today or planned to be used in the future.
The next point to consider is vendor and data lock-in. Despite the benefits some PaaSes offer, the access to the application itself and used middleware stacks can be very limited due to proprietary design of tools and services. This aspect affects application portability. So the migration to any other cloud or implementing multi-cloud interoperability approach becomes a real challenge. The same issue applies to the stored data. Ensure that PaaS provider allows to import/export data easily without any lock-in.
They say there's no "one-size-fits-all" technology for every project but in modern cloud world with all integrations and interconnections available the borders between specific products are blurring. Jelastic Multi-Cloud PaaS provides the required freedom of choice when it comes to cloud services, DevOps tools and container management systems. Give it a try to immensely improve development productivity and application delivery processes with minimal investment.
Source: Dzone.com
Powered by NewsAPI.org
Keywords:
Platform as a service • Platform as a service • Platform as a service • Cloud computing • Cloud computing • Software deployment • Scalability • Automation • Application lifecycle management • DevOps • Programming tool • Infrastructure • On-premises software • Platform as a service • Infrastructure • PRISM (surveillance program) • Technology • Platform as a service • Platform as a service • Innovation • Software development • Cloud computing • Platform as a service • Platform as a service • Computer • State (computer science) • World Wide Web • Multitier architecture • Application software • Platform as a service • Type system • Technology • State (computer science) • Cloud computing • Machine code • Microservices • Scalability • Fault tolerance • Web service • Software development • Web service • Emerging technologies • Serverless computing • Distributed computing • Machine learning • Market (economics) • Product (business) • E-commerce • Big data • Data analysis • E-commerce • Platform as a service • Automation • Software deployment • Business process • Software developer • Software design • Implementation • Subroutine • Complex system • Server (computing) • Computer data storage • Configuration management • Application software • Autoscaling • Load balancing (computing) • Platform as a service • Abstraction layer • DevOps • Service discovery • Security • Load balancing (computing) • Abstraction • Source code • Headache • Infrastructure • Configuration management • Management • Software developer • System integration • Mathematical optimization • Software development • Software framework • Middleware • Software • Stack (abstract data type) • Application programming interface • Daemon (computing) • Abstraction (software engineering) • Cloud computing • Software deployment • Platform as a service • Scalability • Load balancing (computing) • High availability • Backup • Disaster recovery • Continuous integration • Application lifecycle management • Abstraction • Abstraction • Computer programming • Abstraction • Infrastructure • Microsoft Visual Studio • Systems engineering • Platform as a service • Configuration management • Programming tool • Continuous integration • Plug-in (computing) • Integrated development environment • Programming tool • Web service • Software deployment • Automation • Git • Source code • Continuous integration • Comparison of project management software • Cloud computing • Infrastructure • Configuration management • Health care • Availability • Security • Performance management • Cost • Mathematical optimization • Automation • Service (economics) • Maintenance, repair, and operations • Packaging and labeling • Management • Containerization • Systems engineering • Implementation • Cloud computing • Application software • Platform as a service • Component-based software engineering • Product (business) • Platform as a service • DevOps • Platform as a service • Platform as a service • Technology • Middleware • Programming language • Software development • Data • Vendor lock-in • Middleware • Proprietary software • Software design • Programming tool • Portable application • Cloud computing • Cloud computing • Interoperability • Platform as a service • Data • Cloud computing • Jelastic • Platform as a service • Free will • Cloud computing • DevOps • Packaging and labeling • Economic development • Productivity • Business process •
There's no single PaaS for everyone. Even the definition of this cloud computing service model is quite vague today. Commonly, it is described as a cloud hosting platform with a set of deployment and scaling automation, application management, and DevOps tools that can be run on shared infrastructure or on-premise. Also, PaaS eliminates the complexity of building and maintaining the underlying infrastructure. Let's see how PaaSes differ through the prism of their use cases and supported technologies, and how to determine which one will meet specific needs.
Let's take a closer look and analyze Platform-as-a-Service solutions from several angles:
Today's PaaS vendors bring innovative approaches to application development and their hosting in the cloud by providing various tools built specifically for a particular service. Considering use cases hosted within Platform-as-a-Service solutions, we can break down PaaS offerings into three broad categories: general-purpose, emerging and specialized.
General-purpose platforms are widely chosen for traditional stateful web and N-tier applications thus offering "lift and shift" approach for migrating existing workloads. In addition, this PaaS type is timely expanding with modern technologies that meet the needs of stateless cloud-native applications and microservices, and help to develop new scalable and fault-tolerant services.
EmergingPaaSes bring new approaches to the market. They are commonly used for the development of independent services based on emerging technologies such as serverless, distributed event processing, machine learning frameworks, and others.
Specializedplatforms focus on narrow niche use cases but with high demand on the market. Such products have proved to be effective in different directions including e-commerce, big data processing, and business applications. Often, these platforms are transformed into subcategories such as CMSaaS, eCommerce-as-a-Service, DBaaS, BPaaS, etc.
PaaS solutions are increasingly focused on full-cycle automation of application deployment and delivery processes. This helps developers to focus more on application design and its implementation instead of time-consuming routine or complex tasks, such as server and storage configuration, application and infrastructure security, auto-scaling, load balancing, and so on.
There can be considered three levels of PaaS abstraction: low, mid and high.
Low abstraction level platforms, especially Container-as-a-Service (CaaS) solutions, provide DevOps teams with deep access to infrastructure configurations, as well as granular control over containers and various platform services (e.g. service discovery, logging, security, and load balancing).
Mid-abstraction has the primary goal to let developers code without the headache of infrastructure configuration and management. These platforms give developers access to a wide range of integrated and optimized development frameworks, middleware software stacks, APIs and services completely abstracted from CaaS and IaaS deployment properties. Very often such PaaS solutions provide automatic scaling, load balancing, high-availability, backup, disaster recovery, CI/CD, and other application lifecycle management features out-of-box.
High abstraction solutions are aimed to abstract even coding process to increase the application delivery speed and reduce the cost of innovations. In this case, developers get the entire technology stack but with full abstraction of application, platform and infrastructure levels. It helps to boost the performance of team members and reduce requirements to their technical skills.
In order to automate the application lifecycle management processes, PaaS represents a collection of configuration tools, continuous integration and delivery services, connectors and plugins to popular IDEs.
We can highlight three main approaches in this category:
PaaSes concentrated on providing tools and services for deployment automation offering "one-click" or "git-push" functionality, as well as pre-configured environments for code building, continuous integration and project management tools.
Cloud platforms focused on infrastructure configuration, health and availability monitoring, security and performance checks, cost optimization, as well as offering automation and services related to upgrades and maintenance.
Container management platforms offering functionality to solve challenges of containerization process and implementation of cloud-native approach for existing or new applications. Many PaaS vendors now offer CaaS as an integral component of their products, further reinforcing the view of PaaS as a collection of different DevOps tools.
There are several important points that should be considered before selecting a PaaS for a company.
Above all, analyze whether the chosen PaaS supports the technologies, middleware stacks and programming languages used by development teams today or planned to be used in the future.
The next point to consider is vendor and data lock-in. Despite the benefits some PaaSes offer, the access to the application itself and used middleware stacks can be very limited due to proprietary design of tools and services. This aspect affects application portability. So the migration to any other cloud or implementing multi-cloud interoperability approach becomes a real challenge. The same issue applies to the stored data. Ensure that PaaS provider allows to import/export data easily without any lock-in.
They say there's no "one-size-fits-all" technology for every project but in modern cloud world with all integrations and interconnections available the borders between specific products are blurring. Jelastic Multi-Cloud PaaS provides the required freedom of choice when it comes to cloud services, DevOps tools and container management systems. Give it a try to immensely improve development productivity and application delivery processes with minimal investment.
Source: Dzone.com
Powered by NewsAPI.org
Keywords:
Platform as a service • Platform as a service • Platform as a service • Cloud computing • Cloud computing • Software deployment • Scalability • Automation • Application lifecycle management • DevOps • Programming tool • Infrastructure • On-premises software • Platform as a service • Infrastructure • PRISM (surveillance program) • Technology • Platform as a service • Platform as a service • Innovation • Software development • Cloud computing • Platform as a service • Platform as a service • Computer • State (computer science) • World Wide Web • Multitier architecture • Application software • Platform as a service • Type system • Technology • State (computer science) • Cloud computing • Machine code • Microservices • Scalability • Fault tolerance • Web service • Software development • Web service • Emerging technologies • Serverless computing • Distributed computing • Machine learning • Market (economics) • Product (business) • E-commerce • Big data • Data analysis • E-commerce • Platform as a service • Automation • Software deployment • Business process • Software developer • Software design • Implementation • Subroutine • Complex system • Server (computing) • Computer data storage • Configuration management • Application software • Autoscaling • Load balancing (computing) • Platform as a service • Abstraction layer • DevOps • Service discovery • Security • Load balancing (computing) • Abstraction • Source code • Headache • Infrastructure • Configuration management • Management • Software developer • System integration • Mathematical optimization • Software development • Software framework • Middleware • Software • Stack (abstract data type) • Application programming interface • Daemon (computing) • Abstraction (software engineering) • Cloud computing • Software deployment • Platform as a service • Scalability • Load balancing (computing) • High availability • Backup • Disaster recovery • Continuous integration • Application lifecycle management • Abstraction • Abstraction • Computer programming • Abstraction • Infrastructure • Microsoft Visual Studio • Systems engineering • Platform as a service • Configuration management • Programming tool • Continuous integration • Plug-in (computing) • Integrated development environment • Programming tool • Web service • Software deployment • Automation • Git • Source code • Continuous integration • Comparison of project management software • Cloud computing • Infrastructure • Configuration management • Health care • Availability • Security • Performance management • Cost • Mathematical optimization • Automation • Service (economics) • Maintenance, repair, and operations • Packaging and labeling • Management • Containerization • Systems engineering • Implementation • Cloud computing • Application software • Platform as a service • Component-based software engineering • Product (business) • Platform as a service • DevOps • Platform as a service • Platform as a service • Technology • Middleware • Programming language • Software development • Data • Vendor lock-in • Middleware • Proprietary software • Software design • Programming tool • Portable application • Cloud computing • Cloud computing • Interoperability • Platform as a service • Data • Cloud computing • Jelastic • Platform as a service • Free will • Cloud computing • DevOps • Packaging and labeling • Economic development • Productivity • Business process •