Almost on every website of developers of paid production CMS there is a section “Certified hosting providers”, or “Recommended hosting”, or simply “Hosting”.

The CMS developer verifies that the characteristics of the test rate provided by the host to the minimum technical requirements of its CMS. Ideally, it sets its own system on this test tariff and performs basic operations.
')
The hosting provider falls into the list of tested (certified) hosters ... and - usually - this is where the interaction with it ends.
In 2008, we followed the same path. Some (useful - in our opinion) feature was that for the successful certification of tariffs, in addition to the actual tests, two of our online courses (
“Installation and Configuration” and
“Configuration” ) were required by the hoster employees. This gave our customers some guarantee that in case of any problems or issues on this particular hosting, its staff will be ready to provide the necessary assistance.
However, at the end of 2010, we realized that it was time to change something in our partnership with hosting providers. And that's why…
- By 2010, our hosting partner catalog consisted of more than 100 companies. The catalog was a simple list, there was no rating system. In other words, such a directory became completely useless for end customers, since it did not give any help in choosing the right host.
- There was no data update. A simple example: hoster A created a new hosting tariff called “Bitrix”, which showed excellent performance. Then, after six months or a year, the new servers were scored by clients in such a way that everything just barely moved ... But, unfortunately, we did not know about it.
Eliminating precisely these key flaws (as well as a few additional nice features, which are a little further) is the main goal of the new
Recommended Hosting rating catalog , which we opened this year.
We want to tell you today about how we test hosting, what we pay special attention to, what you need to keep in mind when choosing a hosting service for any client.
- Firstly, we have retained all the requirements for hosting providers that existed before (compliance of tariffs with CMS technical requirements, hosting courses by hoster employees).
- Secondly, for tests of tariffs, not only is compliance with formal requirements checked now, but a live installation of the demo site is also being done in order to measure performance using the “performance monitor” .
- Thirdly, for each tariff in the catalog, re-testing is carried out every 6 months.
To calculate the position of the host in the ranking, we came up with the following formula:

I will dwell on it in more detail.
With the test period - everything is clear. The presence of a “simple installation” is the ability to install 1C-Bitrix products directly from the hosting control panel or using the pre-installed
bitrixsetup.php script.
The main criterion for determining the position of the host in the rating was the ratio "performance / price".
The “price” parameter was added very deliberately. In recent years, there has been a bad practice with hosting providers: “
We take standard hosting rates, tune the parameters for them a bit, add the word“ Bitrix ”and hang the price tag one and a half to two times more than usual. Client bought CMS, buy and hosting! "
This picture did not suit us, or clients, or development partners. If the hoster has allocated a special. tariffs separate equipment, made the necessary settings, places not too many accounts on each server - in this case the increased price (for quality and comfort) is justified. Just for the name (without differences from standard tariffs) - no.
If everything is simple and clear with the “measurement” of prices, then with “performance” everything is not too obvious. I will tell about it in detail.
For measurements, we use the capabilities of the standard module of the 1C-Bitrix platform -
“Performance Monitor” .

The “Configuration” tab is responsible for diagnosing the hosting or server and server software settings, the “Bitrix” tab - those settings of the platform itself that can affect performance, “Development” - the quality of the developer code, “Scalability” - a simple built-in tool for carrying out the simplest workloads tests.
The most interesting section for us is “Configuration”. That we used them, testing hosters.
One of the most frequent questions that we had to answer: “
How can we believe your measurer, if she measures her performance in some incomprehensible“ parrots ”? Why do we have low numbers on powerful hardware? Your formula is lying! "
And here I am debunking one of the most ancient myths. It consists in the fact that there is a certain magic secret formula that slyly multiplies different figures from the table (number of file operations, CPU, database operations, etc.) and gives the final result number.
There is no such formula! :)
How performance monitor worksWe request several times (10, to be exact) a certain system page on which only the core of the product is loaded. According to the results of 10 measurements, we estimate the average time of generation of this page (it is the server, and not the time of the page transfer to the client). This figure is the "average response time." And the total index is the reciprocal. In our case, 1 / 0.0137. In other words, 72 “empty” (only with the kernel) pages can be generated on our test hosting in 1 second.
It is this value that is important, because for the client it matters exactly how fast his site opens (pages are generated), and not every parameter separately. They are indicated rather so that the system administrator (or even just an experienced user) can quickly and easily determine where the bottlenecks are in his system.
(You
can read more about the performance of the performance monitor
in the blog of Denis Sharomov , Head of Technical Support Service, 1C-Bitrix)
With the formula sorted out and go back to our tests.
The experience of testing several dozens (already close to hundreds) of hosting sites showed an interesting picture: fortunately, hosts do not often save on equipment, but, unfortunately, very often they are “pulled” by the historical legacy of old configurations and suboptimal hosting structures. “Newbies” of the market, too, unfortunately, very often do not give maximum performance and make the same typical mistakes.
I wanted to draw attention to some of them. I think it will be useful for those who carefully choose hosting, testing different options.
PHP as CGIPHP running as CGI (not FastCGI!) Is a terrible atavism. This should not be.
What is such a bad scheme. If in a nutshell - for each appeal to the php-script, a new PHP interpreter process is launched. All this works very slowly, the performance of the site (of any site written in PHP, not only on the 1C-Bitrix platform) will be extremely low.
Fortunately, such configurations are encountered less and less (in the past six months in real life we have not encountered this), but, nevertheless, still exist.
Enabled open_basedir parameter in PHP configurationProbably everyone knows what this parameter is responsible for - it limits the "scope" of files and directories with which PHP can operate.
Many hosters include this option on shared shared hosting in order to ensure the security of user data (restricting access by other users on the same server).
But not everyone knows that the inclusion of this parameter reduces the performance of PHP by 10-40%, and on loaded systems (especially with a large number of disk operations) - up to 2-3 times!

See, here is the same server that ran the test shown above, but only with open_basedir enabled. The speed of page generation decreased by almost one and a half times. We see that the PHP configuration is marked "non-optimal", and under the link "recommendations" you can read in detail about exactly where the problems arise.
We are lucky, on this particular hosting we can manage this parameter in PHP. And on many hosting companies this is not disconnected under any circumstances.
Many hosters object to us: “
Well, you know, it’s impossible to disable it on shared hosting ... Otherwise there will be security problems. "
This statement is incorrect. You can balance the security and performance with a variety of methods: starting with launching personal copies of the web server (for example, the same Apache) for different users, ending with using FastCGI via php-fpm. By the way, different hosters in our rating use the one and the other option.
I note once again: this feature of open_basedir is inherent in PHP in general and in all projects written in this language, and not just the 1C-Bitrix platform (try searching, for example, in Google “
open_basedir performance ”). If your site is on WordPress, Joomla, Drupal and any other CMS in PHP - pay attention to this.
PHP precompiler not installedAnother enemy of performance is the lack of a pre-compiler for PHP on the hosting. There are quite a lot of them (APC, eAccelerator, XCache, etc.), and they all do about the same work - they speed up the work of PHP by precompiling the interpreted code. Depending on the specific precompiler, its settings (for example, the amount of available memory), the project code, the performance increase can reach several times.
We will again torture our test hosting, remove the open_basedir included in the previous test and disable the precompiler for a while.
Fortunately for us, we perform all these operations on the hosting, where we can all set up “the way we need” and eventually get a good (fast!) Hosting. On many hosts, unfortunately, the set of user-changeable options is strictly fixed, and it is not possible to achieve good results (except for how to change hosting).
Let's go back to the numbers:

Pay attention, server parameters (CPU, disk operations), databases practically do not change (naturally!), And, here, the correct configuration of PHP solves everything.
Of course, we have listed far from all the things that affect performance. In addition to the actual PHP settings, a lot of the base configuration parameters, properly configured web server settings, a well-designed two-tier (frontend + backend) architecture matter ...
There are hosting (unfortunately, absolutely real), on which everything is just bad, and then it turns out this “thrash and waste”:

And on a good powerful hardware, fast SAS disks, and with proper settings - the site just “flies” (screenshot from a real, not “spherical in vacuum” shared hosting):

* * *
Another aspect that, although not described in the
formal requirements for hosters who want to be certified by 1C-Bitrix, but which we definitely pay attention to is
security . Frankly "holey" hosting never get our badges "Certified hosting" and "Recommended hosting."

The most common problem - open_basedir was turned off, but no other means of isolating users was invented. What is the result: all hosting clients work with the same web server, the processes of which are running under one system user (sometimes it happens even root).
As a result, each user can "see" not only their files and directories, but also the data of other users.
The simplest checks can be performed in the 1C-Bitrix administration interface:

Of course, we didn’t find such blatant “holes” among the major well-known hosters, but among those who have several dozens / hundreds of customers - very often.
Be careful and vigilant when choosing a hosting.
And if the problem described above is quite typical, then there are so careless "hosters" who are genuinely surprised how they could attract at least one client.
A couple of the most vivid examples in our memory.
Hoster U (because in Ukraine)
We received a test account, set up a demo site - an online store for the Small Business editorial staff (we are testing all hosting sites for consistency with this edition). We made “
ls –la / tmp ” through the web interface ... and saw several dozen files of the form “
login.txt ” in which all the access parameters for FTP, SSH, MySQL of all hosting users were stored.
Hoster K (in Kazakhstan).
Standard procedure, test account. Everything is not bad with performance and (at first glance) with security.
The tests have finished, moved to the site of the host itself ... And they found out that the top administrative panel of Bitrix remained above it.
As it turned out, the site was hosted on our platform. And it was configured so crookedly that it saved authorization data from subdomains (where the test account was) on the main site.
* * *
I deliberately do not indicate in the text the names of specific hosting sites (perhaps I can give some specific recommendations in person).
There is no purpose to blacken this or that company. The task is to show how many nuances await those who come to the question of choosing a hosting seriously, and does not act at random (although here it may be lucky;)).
At the same time, I hope
our rating can actually help customers make a choice taking into account the most different parameters of hosting - performance, speed of sites on it, cost of the tariff, availability of a test period, convenience of work.
At the same time, we offer hosters a clear and transparent ranking scheme in the ranking. Thus - we give everyone equal opportunity to be in the top. And thus - it is very effective (including through our promotion) to attract new hosting clients! As our statistics show, in one week up to a thousand clicks are made from the pages of the ranking to the sites of hosters. These are almost complete customers. :)
We will actively develop our rating of hosters and, I hope, with time we will make an excellent objective rating of hosting in general, and not just “special for bitrix”. Why not? :)
Sincerely, Alexander Demidov
Head of Rental Solutions "1C-Bitrix"