experience of Reg.ru and DigiLabs

Text navigation:

Where it all began

What we did

How we calculated the performance index

What's the bottom line?

Where it all began

It all started with our Reg.ru development team, in collaboration with DigiLabs, developing a platform for 1C, taking into account the specifics and requirements of the application. And then we needed to prove first of all to ourselves (and then to our clients) that the infrastructure is really suitable for hosting 1C. Daria Velichaeva's team (DigiLabs) prepared a testing methodology with a full imitation of intensive user actions.

Spoiler: the test showed that our platform is at least 30% more productive than other clouds currently available. With some providers, the difference was up to 90%.

There is a well-known and widely used load test, but it has a drawback: single-threading. Therefore, it shows not quite relevant results. Another drawback of the existing tests, in our opinion, is the minimum amount of data in the test databases, since owners of databases of significant volumes often encounter performance problems. Having failed to find a ready-made method for objectively comparing infrastructure performance, we decided to develop our own test that allows us to more accurately assess the performance of multi-user databases.

So, the task was this: to check how well the platform we assembled could handle the high load from 1C.

What we did

We took one of the most resource-intensive configurations — “1C:ERP Enterprise Management”. We filled it with a sufficient amount of data (150 GB, and then also conducted a test on a 500 GB base). Using the “Test Center” subsystem, which is part of the “1C:Corporate Toolkit”, we developed a multi-user scenario that emulates the work of users. Each virtual user in the multi-user test performs a sequence of operations that simulate the sales process. The test is limited in time (15 minutes), the number of operations performed depends on the performance of the stand.

When developing the testing methodology, we tried to make a comprehensive assessment of performance, so in addition to the speed of operations, we took into account the degree of load on the 1C server and DBMS server equipment. The following indicators are analyzed during the test:

Thus, even having received similar values ​​of the performance assessment of different stands in terms of execution of operations, we can see where the hardware is overloaded and where it is idle.

To collect OS metrics, we use the telegraf service; after the test is complete, we upload the metrics to 1C.

To conduct load tests, we selected the following server configurations:

To reproduce the load, 100 VRMs (virtual workstations) were used. It is worth mentioning here that this number does not reflect the number of real users who can work in this server configuration. VRMs create a more intensive load. The purpose of the test is to compare different stands with the same resources and the same load.

In addition to the multi-user scenario, another one was prepared: with the “pain” of many – the routine operation of closing the month. It is long and complex, but very important for users.

How we calculated the performance index

In the process of testing and discussing the results, we came to the conclusion that the business asks for simpler and more understandable metrics. Therefore, we left such concepts as the overall integral assessment, quantiles of the OS metrics and APDEX for detailed analysis, and as the most visual and understandable results we used the number of operations performed in the allotted time, the average time of execution of key operations, and we also did not forget to compare the cost of the infrastructure, so we introduced such a metric as the number of operations per 1000 rubles.

We compared the average execution time of the main key operations of a multi-user scenario:

An important factor when choosing a cloud provider is cost, so we compared the cost of the tested configurations:

When conducting the second test, which included closing the period, the performance dynamics were maintained, we received similar figures for the increase in the performance of our infrastructure compared to others.

One of our customers has done their own load testing of different platforms using other methodologies, including HammerDB. And their test confirmed our performance numbers.

What's the bottom line?

Now the entire Runiti group has transferred part of its databases to the infrastructure developed and tested jointly with DigiLabs (and this is the main indicator of our trust in our product). The platform suits us both as an internal customer and as a service provider: our clients also use this product.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *