There weren’t a lot of options in Russia in terms of quality and price. In the end we chose Selectel; we liked their easy-to-use control panel and availability of parts.
SRE Team Lead, amoCRM
amoCRM was founded in 2009. The company’s key product is its Customer Relationship Management system, which helps monitor and improve sales. The CRM system creates a continuous sales pipeline, organizes unlimited process chains, combines the work of all employees in a single system, and eliminates the human factor.
amoCRM doesn’t require a physical installation; users just register online and can immediately start using the system. Operations and updates are tracked by amoCRM specialists, and users can expand the system’s capabilities with the help of its open API and widgets: for example, integrate with social networks or save files to Dropbox.
The company experienced fast growth in 2015. They needed to scale, increase capacity, and find a reliable backup platform.
amoCRM had grown dissatisfied with their previous provider for several reasons:
Selectel was chosen by amoCRM to be their new provider. They liked the easy-to-use control panel and availability of server parts.
Selectel was originally used as a backup platform, but in time they were able to support all amoCRM traffic and soon became its primary platform. Now, amoCRM distributes work loads and uses data centers from two providers.
amoCRM orders 1-2 new machines every month; the company swaps out older machines for more powerful configurations, and there aren’t any issues related to server parts.
Almost all of their servers are custom built. The system uses a lot of user data, which their analytics are based on, so performance and disk size often come into question. For compiling search indexes and keeping everything up to date, a lot of RAM and bandwidth are required. Traffic-related problems are now a thing of the past; amoCRM uses a 1 Gbps connection from Selectel.
All user traffic is sent to Selectel servers. amoCRM is a web application and receives around 100 million HTTP requests daily. Two front-end servers handle incoming traffic and proxy it to back-end servers, which process the requests, handle the data, and prepare user responses: arrays and website composition.
User data is stored on 15–17 nodes. There are also a number of servers dedicated to processing data; the company uses a queuing system for unloading context: compiling-recompiling-filling out search content and automating Digital Pipeline functions for sending tasks, text messages, and email. Data is post-processed on these machines after user requests have already been responded to. Multiple independent servers exclusively handle chats, integration with different messenger services, and the notification center. This lets amoCRM keep their site transparent: when one user adds data to the site, another sees it without refreshing the page.