Knowledge Base
MilesWeb / Cloud Servers, Web Hosting FAQ

What Is Automatic Vertical Scaling?

Approx. read time : 3 min

In the cloud hosting environment, you can scale any application vertically or horizontally according to its resource requirements, thus ensuring more flexibility. Automatic vertical scaling of your applications is possible as you have the ability to dynamically change the amount of resources allocated to the server like CPU and RAM. This can be done in accordance with the current demands of your website / applications and no manual intervention is required for adding more resources. As a result of this feature, affordability is ensured as you don’t end up overpaying for the unused resources. Automatic vertical scaling also saves your time as you don’t have to manage any architectural changes manually.

You can define the maximum limit that you would like to consume and MilesWeb’s cloud hosting environment will automatically decide the optimum amount of resources needed for your app. This is done by real time tracking of the incoming load.

How Does This Work?

It is easy to understand the concept of automatic vertical scaling. As soon as the load of an application increases, MilesWeb’s cloud environment simply makes additional resources available for it. And when the load of the application decreases, the resources allocated to it are automatically reduced.

Modifying the amount of resources allocated usually takes only 1-2 seconds and this process does not have any kind of negative impact on the functioning of your app.

The automatic vertical scaling feature can be applied to anything in your environment like databases, load balancer, application server, Docker container, Elastic VPS, build note and cache instance.

MilesWeb’s cloud environment measures the resources in special units known as ‘Cloudlets’. 1 Cloudlet is approximately equivalent to 128 MiB RAM and 400Mhz CPU Core.

Cloudlets are of two types : ‘Reserved’ and ‘Dynamic’

The Reserved Cloudlets are used for defining the amount of resources that you think your application will surely consume and you pay for these resources irrespective of the real usage. These resources are charged at a lower price in comparison to the dynamic ones.

The Dynamic Cloudlets define the amount of resources that can be accessed by your application on the basis of the necessity of your application. You pay for these resources only if they are consumed.

The process of vertical scaling takes place within the defined dynamic cloudlets. You can choose the scalability limits with the suitable settings and effectively implement the budget that you want to spend, thereby preventing the unexpected and high billing charges.

Adjusting The Resource Limits

A newly setup cloud environment receives a specific amount of cloudlets. The amount of resource consumption depends on the type and number of your software stacks. When added to the environment, every stack receives a default number of cloudlets according to the optimum resource amount required for its functioning.

If you wish to scale your environment and change the number of allocated resources, you can easily increase or decrease the maximum number of allocated resources (cloudlets) manually through the ‘Environment topology’ option. For this, you can use the cloudlet sliders present in the vertical scaling section of the central pane.

Once you save the changes you have made, they are implemented immediately and there is no need to reload the virtual machine.

Quick tip : In order to calculate the approximate amount of resources required by your application and to determine the most suitable scaling limits, you can make use of the automatically gathered statistics. These statistics include data about the resource consumption levels for the last week for every node present in your cloud environment. This information is displayed in an easy graphical way for you to understand it better.

My aim is to create enriching content on topics related to SEO, web hosting and social media. The idea is to elevate the readers to new levels of usability, accessibility and understanding.