BuyuCloud PaaS provides a versatile pricing model, that can be adjusted to meet the requirements of the most demanding customers due to the number of awesome features:
-
The resources are provisioned with granular units - cloudlets (128MiB of RAM and 400MHz of CPU). This allows to allocate exactly the needed amount of resources.
-
Fully automatic vertical and horizontal scaling assure that I’ll be provided only with the required capacities without overpaying for unused resources.
-
The system of automatic discounts makes the BuyuCloud usage even more beneficial when the volume of ordered resources grows.
In contrast to the majority of other vendors, all of these features allow BuyuCloud to provide a truly user-oriented Pay-per-Use charging approach:
How It Works
With automatic scaling I don’t need to guess or predict the incoming load. The platform will automatically adjust the amount of allocated to environment resources (within the stated scaling diapason) according to its current requirements.
The Scaling Limit sets a maximum number of cloudlets that can be allocated for each server, so I can use it to define a maximum possible budget for my project. Subsequently, cloudlets will be automatically added to my servers based on application resource consumption. These are called Dynamic Cloudlets because they're dynamically added (as my resource usage increases) and removed (as my resource usage decreases). So, I pay based on the actual hourly usage.
Since most applications need a certain amount of resources just to be loaded and ready to run, I’ll always consume a particular number of cloudlets regardless the load level. Therefore, I can allocate them beforehand with Reserved Cloudlets and benefit on automatic discounts.
These scaling ranges are configured individually for each server instance, so I can specify different limits for each container depending on my needs and preferences.
Setting Up Usage-Based Pricing
In order to apply such a usage-based pricing model to my environment, perform the following steps:
- Set the Scaling Limit slider (the transparent one to the right)to my desired maximum resource limit
Warning: Setting Scaling Limit too low for highly-loaded applications may cause their instability.
Since usage is calculated hourly, my cloudlet (RAM & CPU) consumption can go up and down throughout the day depending on application needs - so Ican automatically pay a lower price when I am using fewer resources (e.g. during low traffic periods), and only pay more when additional resources are really needed (e.g. during high traffic periods).
2. Set the Reserved Cloudlets slider (the left white-colored one) to the desired value in order to commit the minimum amount of RAM & CPU that I expect to always need and get the discount for them. The exact discount size can vary by hosting provider and the overall number of Reserved Cloudlets in my environment (i.e. their sum for all nodes)
Example
In our example, the server has 4 Reserved cloudlets and a maximum limit of 24 Dynamic Cloudlets. With this configuration, the payment will be done as follows:
- if I use 4 cloudlets or less, I pay for 4 cloudlets based on discounted Reserved cloudlets price
-
if I use e.g. 16 cloudlets, I pay for 4 cloudlets based on Reserved price (as they are already allocated) and for 12 cloudlets based on Dynamic price
Combining the Reserved and Dynamic cloudlets usage enables me to save my costs whilst remain prepared for the unexpected surges in application demands. Such an approach allows to handle all of the incoming requests during load peaks, and, at the same time, not to overpay for the unused resources.