Platform-as-a-Service
The PaaS compound pattern comprised of following patterns:
Shared Resources
This pattern is responsible for sharing the physical or virtual server with the installed operating system to be used for hosting readymade environment (also known as platforms) to become accessible and be used by different consumers at the same time.
Usage Monitor
In a PaaS, the Usage Monitor tracks and monitors the usage of platforms used and accessed by consumers. This pattern does not log any information about the use of the physical or virtual server that hosts the platform.
Pay-as-You-Go
Calculating the cost of platform usage only is the responsibility of Pay-as You Go. Like the Usage Monitor, this pattern just concentrates on and calculates the usage costs of platform use only.
Self-Service Portal
This pattern is very restricted compared to the Self-Service Portal in IaaS: Here, it is responsible for enabling consumers to request a platform or its components such as database connection. However, they cannot request other resources or services like virtual servers.
Elastic Environment
This pattern is responsible for enabling elasticity to the cloud environment in order to dynamically scale the resources on demand and upon consumer requirements.
Resilient Environment
Resilient Environment adds resiliency to a cloud environment and accommodates failure and load balanced service models.
Resource Pool
This pattern is very similar to the Resource Pool in a Public Cloud environment, but in PaaS, all resources inside the pool are invisible to the consumer. In other words, the consumer cannot see the undelaying resources that are hosting a platform, and the consumer has no control over them.
Usage and Administration Portal
The Usage and Administration portal is applied to provide a way for consumers to access provisioned platforms. The consumers can customize their platforms based on the features provided by cloud provider. Also, the consumer can see Platform availability and usage reports on this portal, but they cannot see any information about the operating system or other underlying resources available to the consumer.
Broad Access
Broad Access makes the platforms widely accessible and ensures that consumers can use different devices to connect to their platforms.
Multitenant Environment
This pattern has same the responsibility as the Multitenant Environment in a Public cloud environment with a small difference. It brings a feature to the cloud environment for the cloud provider to host multiple tenants at the same time, but here the tenants will be given access just to their platforms.
Resource Reservation
This pattern brings an isolation layer between different tenants’ data and prevents trust boundary isolation. Applying this pattern will decrease the risk of trust boundary overlap.
Platform Provisioning
In a PaaS, Platform Provisioning provisions and deploys the platforms requested by consumers via the use of Rapid Provisioning pattern. In some cases, it comes with some pre-built, pre-configured platforms for provisioning, and in other cases it provides a feature to the consumers allowing them to select some parts of the platform such as the type of database.
Non-Distruptive Service Relocation
In a PaaS, this pattern is responsible for relocating and moving the platform from one platform host to another. This relocation will happen seamlessly and without any service interruption.
Rapid Provisioning
This pattern is responsible to deploy the required underlying operating system, drivers, and applications and make the platform ready. In other words, it does performs the requests that come through via Platform Provisioning.
Service State Management
This pattern provides a feature to the cloud environment which allows cloud consumers to pause the status of their service via the use of state management database. As a result, later on, the consumer can resume the status of service and work without issue.
Isolated Trust Boundary
This pattern mitigates the risk of overlapped trust boundaries by isolating the consumer’s data from other consumers; the Isolated Trust Boundary pattern is responsible for ensuring that consumers cannot see any confidential data that belongs to other consumers.
Real-time Resource Availability
Real-time Resource Availability is responsible for monitoring the resources and publishing their availability reports into the consumer’s Usage and Administration portal.