Onyx Plan Resource allocation - How do I increase my sites resources?
When looking at hosting a site, your first question will generally be something along the lines of:
"How do I know what resources are necessary for my website and my plans for future development?".
While this is a natural first question and the best way to start your search for an appropriate shared hosting plan, Onyx does things a little differently and as a result, you will include several other metrics when deciding on your hosting plan.
In this guide we will discuss what each of these resources is, what it does and why you need it. We can then explore how Onyx uses these a little differently to most hosting plans!
What resources are included with my Onyx plan?
Your Onyx hosting plan is comprised of four main parts: Containers, CPU, RAM and Disk Space.
Containers are one of the main features your Onyx plan that differentiate it from a standard hosting plan. We will discuss the intricacies of containers later in this guide!
Initially, your Onyx plan will be provisioned with 2 containers.
By default, each container is allocated 1 CPU core per container, this results in a standard site being allocated with 2 total CPU cores.
As with CPU cores, RAM is allocated on a per-container basis. A standard Onyx plan will be allocated 2GB of RAM per container for a total of 4GB of RAM.
Disk Space / Storage
Your Disk Space is not predefined unlike the resources mentioned above. This will vary depending on the Hosting Plan (Link opens in a new tab) you choose:
5GB SSD storage
- Business 1
10GB SSD Storage
- Business 2:
20GB SSD Storage
- Business 3:
30GB SSD Storage
- Business 4:
40GB SSD Storage
- Business 5:
- 50GB SSD Storage
- Agency 1:
50GB SSD Storage
- Agency 2:
100GB SSD Storage
- Agency 3:
150GB SSD Storage
- Agency 4:
200GB SSD Storage
- Agency 5:
250GB SSD Storage
What resources do I need?
Before we dive in to the explanation of how Onyx works differently, we should first clarify your initial question:
"How do I know what resources are necessary for my website and my plans for future development?"
Onyx does not use the traditional resource allocation and limits that you will find with other hosts and as such, provided your site stays within the visitor count and storage limits, any plan can be allocated the CPU, RAM and Containers necessary to run your site.
Why Onyx is different
In the last section, we covered the basics of the different resources that come with your Onyx plan.
CPU cores, RAM and Storage are used in all hosting plans and are vital for your site to run effectively.
For most web hosts, you will decide on your total resource limits when purchasing the plan, this will generally involve an educated guess on the part of either you or your developer as it is difficult to precisely determine the overall resource usage until a site has been running for long enough to build up a good idea of usage statistics and you risk either not having enough resources, resulting in a slow site or paying too much for resources you don't need.
This also means that every single request sent to your site, cached or not, will be utilising your hosting plan resources to serve the request.
With Onyx, the resources can be scaled to match the site. This means that while every site will be allocated the same amount of CPU cores, RAM and containers initially, as time goes on and the site gains traction this can be increased to match the needs of your site.
Onyx has been designed with easy scalability in mind. Rather than the user having to decide on the resources when they purchase the plan and undergo migrations each time the site runs a successful advertising campaign or is mentioned in the media, the sites resources can be scaled by pulling additional resources from the resource pool and adding additional containers.
As mentioned previously, with the majority of web hosting packages, the resources are all running on a single server and in a single container. This can fill most needs however it isn't as efficient as it could be and as such onyx uses a slightly different method known as a resource pool.
A resource pool is exactly what it sounds like, it is a large pool of resources that is shared by all onyx instances within a cluster. This means that as your site requires more resources, they can be instantly pulled from the resource pool and utilised by your instance without the need for migrations and downtime.
As mentioned, Onyx makes heavy use of containers. When we discuss adding additional resources to a site, rather than adding them to a single container, each of your containers will receive these resources.
This means that you have multiple mini computers working through the requests faster than a single, larger computer could. This also means that if your website were to run into an issue that resulted in one container being overwhelmed and using all of its resources, the additional load can be picked up by the other containers. This means less downtime for the site and a much more reliable service.
Onyx utilises LiteSpeed to optimise response times by storing cached copies of your site on our own edge load balancers.
In practical terms, this means that when you have the LiteSpeed Cache plugin installed and enabled on your site, when a user requests a cached page or item on your site, this request will actually go to the load balancers rather than taking up your site resources, allowing the site to prioritise its resource usage on assets that can't be cached. This will lead to overall lower resource usage and a much faster site.
As discussed, with most hosting plans everything your site does uses your resources, but much like caching, MySQL queries are also treated slightly differently with Onyx.
Onyx does not have a per-site MySQL resource limit as these are carried out on large Virtual Machines to avoid some of the issues associated with high MySQL usage that you will normally encounter on a shared hosting product.
Requesting additional resources
As shown above, Onyx uses multiple methods to ensure that your resource usage is only used by the processes that need to and aspects like Caching and MySQL queries are served by resources outside of your plan. This is why the majority of sites can run on only two containers.
In some cases, you may find that your site may be running a little bit slower than you would like and while the initial response to a speed issue is normally to add additional resources, there are a few steps we would encourage you to take first.
Initially you will want to ensure you have LiteSpeed Cache installed on your site as without this, you are losing one of the most valuable parts of what makes Onyx special.
If you already have LiteSpeed installed, we would suggest running a few basic checks to ensure that it is functioning correctly.
Once you are happy that LiteSpeed is installed and functioning, you may wish to make some changes to your configuration, we have a short guide on Managing your Onyx site caching that you may find useful.
Once you have your LiteSpeed plugin installed, if you are still finding that the site performance is not quite as fast as you would like it to be, our support team can investigate this for you. This will initially involve making further tweaks to your LiteSpeed configuration, crawling or object caching. Once the site is properly optimised, our team will then check the site resource allocation and make the necessary changes!
To ensure your ticket is as clear as possible, please follow this guide to ensure the support team can resolve your issue as quickly and efficiently as possible!