We should point out that we didn’t have to involve additional outsourced or in-house experts to carry out the migration.
Get rid of latency: how the Hacktory platform migrated to Yandex Cloud

- Hacktory is an online cybersecurity learning platform that focuses on building practical skills for IT experts.
- The platform uses cloud technology to provide users with isolated access to their own infrastructure.
- Initially, Hacktory used AWS, but faced issues with service quality for Russian users and high latency.
- In winter 2020, the platform’s traffic increased by 30%, which exacerbated existing problems with service stability.
- Hacktory decided to migrate to Yandex Cloud due to the location of servers in Russia, compatibility of API with other cloud systems, and the Yandex Cloud Boost program, which provided a grant of RUB 200,000.
- During the migration, the team encountered a limit on the number of concurrent operations per folder and solved it by creating several folders distributed across data centers and using a launch balancer.
- After migration, the latency indicator decreased from 30 ms to 5–6 ms, and the cost per user was reduced by five times.
- The migration allowed Hacktory to build a fault-tolerant geo-distributed system.
- The team can now focus on developing the educational component of the service.
- The STO at Hacktory positively evaluates Yandex Cloud, highlighting the quality of documentation, intuitive interface, and the usefulness of the Yandex Cloud Boost program.
About the company
Hacktory
We need to reduce latency
Hacktory professionals were involved in remote learning before it was a global necessity. The platform was created a year ago and has used cloud technology since its launch to provide users with isolated access to their own infrastructure. This is convenient because workloads are intermittent: when training is underway, up to 300-500 instances are required per 100 users.
Each platform user is provided with their own isolated virtual environment, including a workstation and a set of VM instances. Minimum latency has always been a critical indicator of platform performance. The lower the latency, the more comfortable it is for a user to use a workstation and the higher platform usability is overall.
We initially used AWS for everything, but we couldn’t always guarantee the quality of service for Russian users. For starters, there were risks associated with claims from Russia’s communications watchdog (Roskomnadzor) against foreign providers. Moreover, the configuration lent itself to high latency.
The problem got worse in the winter of 2020: the platform earned good reviews in the community and traffic increased by 30%. We received a lot of new users between the ages of 18-35 who wanted to either do web security or grow to middle developer. It got harder to work. It even happened that the service failed to start every other time. We decided to look for a Russian cloud provider to avoid AWS vendor lock-in and build a distributed system.
Yandex Cloud Boost from Yandex Cloud
The Hacktory team came to realize that most well-known cloud providers don’t provide infrastructure in Russia. So, the first absolute advantage of Yandex Cloud was that there servers are located in Russia. This makes platform access much faster than other cloud providers. Its API is also compatible with the other cloud systems that Hacktory still uses, so migration was easy.
And this isn’t even the full list of advantages. The Hacktory team joined the Yandex Cloud Boost program and received a grant of RUB 200,000 (approximately $2700.00) from Yandex, which proved useful during migration.
Put everything in folders
In this article, we’ll talk about
The Hacktory service actively uses cloud platform APIs (virtual networks, creating and configuring VMs, and so on), and Yandex Cloud provided everything we needed. Implementation took two months.
During the migration, we learned that there’s a limit on the number of concurrent operations per folder when deploying Yandex Cloud instances, which also limits the number of users that can connect to the Hacktory system at the same time. However, we found a solution: we created several folders that were distributed across data centers and wrote a launch balancer to evenly distribute tasks across the folders. Since there wasn’t a PHP library, the Hacktory team members worked with the API directly, referring to the detailed documentation. And they noted that the Yandex Cloud API is much more user-friendly and better documented than that of the GCP.

Time to reduce costs
We successfully migrated all users residing in Russia and CIS countries to Yandex Cloud, and built a fault-tolerant geo-distributed system where one cloud backs up another.
The latency indicator decreased from 30 ms to 5-6 ms, and thanks to the new provider and lower costs, the Hacktory platform was able to reduce the cost per user by five times. What’s most important is that it’s now easier to work with the service. The speed that lab machines are accessed now in Russia is so much faster that you don’t feel the difference between your computer and remote desktops. The low latency between the user’s data input and display of characters lets them do labs with maximum comfort and without wasting any time. VM instances and private networks are quickly minimized, so users don’t have to wait for long and can immediately proceed to other assignments from Hacktory.
The Hacktory team can now focus on developing the educational component of the service and prepare assignments for programming in various languages.

