Food for Bitrix parrots. We test the performance, we select the iron

    Everybody needs Bitrix-parrots, and more. I work as an administrator in a hosting company and constantly encounter such requests. Let's get this over with once and for all - in this article you will find the answer to how iron affects the performance of CMS Bitrix (real and “parrot”). We will conduct tests and select several server configurations.

    Objectives of the study:

    • Identify the relationship between the characteristics of "iron" and performance indicators Bitrix (parrots), as well as the actual speed of query execution.
    • Determine the dynamics of performance changes from changing the server's hardware configuration.
    • Choose options for server configurations.

    Testing conditions:

    • CMS “1C-Bitrix: Site Management” version 18.0.4, edition “Standard” in utf-8 encoding.
    • Debian 9.5 OS from netinstall image.
    • nginx + php-fpm
    • MariaDB 10.1
    • php 7.0
    • The settings have been made to correctly pass the “system check”, pstate is disabled, acpi-cpufreq is working in the performance mode.
    • Measurement of the speed of query execution is performed by the utility ab.

    So, what to feed the parrots?


    To identify the dependence of Bitrix indicators on processor performance and RAM, we use the following configuration:

    Processor: Intel Core i7-3770K CPU @ 3.50GHz
    Memory: DDR3 Samsung 1600 MHz (M378B5273DH0-CH9)
    HDD: WD5000AAVS-00ZTB0

    This configuration allows you to change the frequency of the processor in a wide range, which means you do not need to replace the CPU many times. To change the frequency, use the frequency-set utility. The intel_pstate driver does not control the frequency, so it is disabled.

    Measurements are carried out in increments of 400 Hz. In addition to performance indicators Bitrix, measure how many requests the main page can perform the server in one second. To measure performance when using an HDD disk, a replica of a previously tuned system was created on the HDD and indicators were collected at the maximum frequency.

    Results: we feed parrots with frequency and speed of requests with cores

    Here are the graphs I got:

    By reference pdf with all the data in graphs and tables . Plus, additional data about the dependence of file system and database indicators on the number of cores and processor frequency.

    According to the data obtained, the following conclusions can be drawn :

    • The number of parrots increases with the frequency of the processor and does not depend on the performance of the disk. With an increase in the number of processor cores, this indicator decreases.
    • The speed of query execution depends on the processor frequency and the number of cores. We consider this indicator as the most important, since site performance with a high number of visitors depends on it.
    • The File System metric does not depend on disk performance. A slight increase in the indicator on the graph - the error. The rate increases with frequency.
    • The disk performance depends on the “MySQL Database (Write)” , “MySQL Database (Change)” metrics and the speed of http requests .
    • The indicator "MySQL Database (read)" stops increasing after two cores. The presence of more than two cores is not reflected in the performance test Bitrix.
    • The frequency of the RAM does not affect performance . We carried out tests, however, there was no change in metrics with changing frequency.

    We select iron

    Considering the data obtained, we will assemble several servers and check their performance. To confirm or disprove the resulting theory, I took three low-cost configurations with different frequency and number of cores. And a few more servers, where more kernels.

    • E3-1270v6
    • E5-2620v4
    • E5-1650v4
    • E5-2640v4
    • 2xE5-2699

    For these servers, the frequency will be set automatically (intel_pstate enabled in performance mode), the table shows the maximum frequency according to the processor specifications.

    What are we looking for?

    • Server for big parrots.
    • Server for a high rate of execution of site requests.
    • Balance between parrots and real performance.
    • Server for faster query execution, for a more loaded project
    • Server for even faster execution of requests, for a high-load project

    The theory was confirmed ↓

    Performance indicators correspond to the previously identified patterns. The higher the frequency, the higher the score shows Bitrix. And if you need a server capable of servicing a large number of visitors, you should choose more cores with the highest base frequency possible.

    Used in the configuration article with . Servers on E5-2640v4 and 2xE5-2699v4 can be ordered at a 10% discount for 2 months - contact the sales department with the code phrase "We need a server for Bitrix, for real performance." If you pay for the year minus another 10%.

    Only registered users can participate in the survey. Sign in , please.

    Or are you basically feeding parrots?

    Also popular now: