📜 ⬆️ ⬇️

VDS performance testing

I pick up the VDS hard - I thought about the performance comparison issue.

The purpose of this article is to try to find a criterion by which you can compare VDS from different providers and choose objectively the most successful price / quality combination. Perhaps the methods outlined in the article are not reliable, but as a starting point - quite enough.


To begin with, I see this question, if anything - correct me, because I am rather guided by common sense, because I have no experience with such tests.
')
On the one hand there is, for example, the benchmark “ubench”, which rather well, albeit surrogate, measures the power in parrots. It should be noted that in the case of VDS, all such testers are not entirely correct, but if there are sufficient statistics, the situation becomes quite close to real.

However, I thought to use another way. There is a CMS that generates some pages of the site for n seconds. I wrote a short script that requests 10 identical pages from different hosts, and then processes the result. Here is the most interesting thing - I personally am not quite sure of the correctness and adequacy of the methodology, therefore I will give the source codes of the scripts:

Script disp.php - tunnel for AJAX, I decided not to bathe with the cross-domain AJAX :)

<? print file_get_contents($_SERVER["QUERY_STRING"]) * 1000; ?>

Script exec.php - runs the main CMS script, emulating the call, measures the time of the call and displays it

<?

$time = microtime(1);
// HTTP
file_get_contents("http://{$_SERVER["HTTP_HOST"]}/");
print microtime(1) - $time;

?>


Actually, the most important script is located at test.osmio.ru/disp.html - all JavaScript code, source code is open.

Personally, I see several potentially slippery places:
  1. If one script has not yet worked, and the new request has already arrived - the server starts to load harder, but the tick of synchronous requests will save it.
  2. The script does not measure the total time of the request, although it might have followed - all servers respond with different delay ... But I deliberately did not include this in the calculation, since channels between servers can go as you please, including through Europe - and it happens that two neighboring DCs in Msk drive traffic roundabout ways.
  3. HTTP request in exec.php - despite the fact that it goes to the same host

After receiving the required number of tests, I process them slightly, as far as the memories of the matane are enough, and draw them out.

Server configurations are as follows:

I measured the following values:
HostThe averageDeviationMinMax0one23fourfive67eight9
vds-dbbb.1gb.ru15644 (28%)128282136138131282137134134133144128
cms.dis.dj129460 (5%)123414621275129112791259123414621282126912621316
89.188.123.2444115 (3%)417460451420452456445460417445420443

I repeat once again that the methodology is not a fact that it is adequate to reality, but I will still draw some conclusions:

Ubench test results:

Conclusions - not such a weak VDS in the Infobox, even despite the lower frequency - it competes well with ISPServer. However, the generation time is much longer. I believe that this is due to the settings of the software. It should be noted here that everywhere except 1GB there is an ISPManager with Apache configured by default, PHP5, etc. It should also be noted that there is a definite correlation between the values ​​of ubench and what my tester measured.

UPD. ISPServer ended the test period, and since its result was not particularly good at a rather impressive price for hosting - I excluded it from the calculation.

Source: https://habr.com/ru/post/54393/


All Articles