I/O (input/output defined as KB/s) is just the “throughput” or speed of data transfer between the hard disk and the RAM. On a server, a disk I/O describes every process that involves writing to or reading from a storage device which on a shared web hosting server will be the hard disk drive, or HDD. I/O processes to an HDD are particularly slow when compared with solid-state memory such as RAM, HDD I/O is, on average, 2,000 times slower.

In a web hosting environment, a web server must support hundreds perhaps thousands of sites simultaneously while creating a well-balanced server environment. The more accounts your provider stuffs on the server, the more noticeable slow disk I/O becomes. While any decent web hosting will not place hard limits on most of the resources, there are some that need to be proactively regulated so that one individual or account do not consume everything.

Most Linux servers in today’s shared hosting environment runs Apache web servers. And, most of these support CGI and FastCGI scripts – written in a number of languages, such as Perl, Python, and the most popular, PHP. A single site potentially can consume all CPU, IO, Memory resources or Apache processes and this may bring the server to a complete grinding halt.

These limits are designed or rather configured to make sure that no single web site can bring down the web server which will affect everyone else.

As you may have noticed, your website doesn’t throw up any noticeable error (sometimes you may see 508 error; again that will depend on how the server is configured) when you exceed your i/o limit. What will happen is that it will the site start responding slower or just “hangs” unable to fulfill the request which typically (do bear in mind that there may be other reasons why this happens) is to transfer data from the hard disk to the RAM. Simply put, it is a limit that when you reach your assigned or subscribed limit, the processes are throttled (put to sleep).

Again, any decent hosting company will grant you what is termed as “soft limit” whereby if you exceeds it, your site will not hang but you will receive warning depending on the setup.

Then, there is the “hard limit” which when you exceed … well, you hang.

In our own environment, we have an in-house systems that make sure that no matter what any customers does, it will never affect other customers on the machine. This control resources being used by all processes for any single account. This eliminates the noisy, bad neighbor effect, improve our server’s stability, and give every webmaster on the server real bang for his/her bucks.

In fact, we have configured:

Soft Limit so that when customers exceed their resource allocations the site will slow down but not hang to accommodate web owners who temporarily exceed inode restrictions.

Hard Limit mode where it would be impossible to create new files and folders after these allocations have been used up.

What will happen is that when:

* a user hits max entry processes limits — we display 508 Resource Limits Reached
* a user hits CPU limit — site will be slow. This often causes surge in connections, hitting max entry processes and 508 error. The account consuming too many resources will temporarily stop working until their resource usage returns to normal. Meanwhile, the other tenants on the server will continue to run normally.

Solutions:

if your site is a wordpress install the plugin performance profiler, this will try to find out which of your plugins is using more resources.

Second install a cache something like W3 total cache this will keep most of your  pages on the RAM and the disk will not be used so often.

Third, optimize your sites/account performance to ensure they doesn’t hit your account resource limits anymore. On cpanel go to Optimize Website and compress all the content.

Last, on cpanel click on cloudflare, put all your sites on cloud, this will make your site load faster, it will save your I/O and even protect your sites from some hacking systems. Read about our partnership with cloudflare. If your package is Video Three or above, contact support to enable CloudFlare Railgunâ„¢ technology on your sites, Railgun achieves a 99.6% compression ratio for previously uncacheable web objects by using techniques similar to those used in the compression of high-quality video. The average website can expect a 1.43x performance increase. Read more about it at Railgun.

You can also upgrade to a higher package or to something more robust.