Компания ООО "Системный софт" - один из крупнейших провайдеров IT-решений в России. На рынке услуг с 2008 года. Каталог программного обеспечения является самым крупным в России и СНГ и насчитывает более 30000 позиций. В сферу деятельности входит выполнение проектов по информатизации и автоматизации частных и государственных организаций, предоставление облачных решений и сервисов для решения конкретных задач заказчика. У сайта компании большая посещаемость, огромный объем каталога и высокие требования к работе сайта 24/7/365. Это обязывает нас придерживаться самых высоких стандартов в поддержании быстрой и отказоустойчивой работы сайта и CRM компании.
Оптимизировать работу сайта и CRM компании, достичь высоких показателей по скорости загрузки страниц сайта, исключить возможность даунтайма, при этом выполнить все работы в процессе непрерывной интеграции.
У хостинг-провайдера было арендовано 12 серверов по довольно высоким тарифам, это должно было обеспечить хорошее качество работы. Изначально серверы работали приемлемо, пока мощности компании не начали стремительно расти. C ростом количества страниц сайтов, качество хостинга сильно упало. После детального анализа было обнаружено огромное количество багов в системе виртуализации (от некорректного учета расхода ОЗУ в гостевой ОС до проблем с подсчетом inode при использовании всего 50% дискового пространства). Мониторинг всей инфраструктуры ограничивался баш-скриптами на самих машинах и практически не информативным и плохо настроенным Cacti. Любая из возникших проблем приводила к даунтайму от 10 минут до 2х часов.
Детальный аудит высоконагруженной, нестабильно работающей структуры серверов, без каких-либо систем отказоустойчивости.
Уменьшение времени ответа страниц CRM и каталога сайта с помощью переноса и оптимальных настроек всей инфраструктуры на более производительных серверах.
Проведена оптимизация настроек веб-приложения, apache заменен на nginx.
Более 60 задач согласно техническому заданию было выполнено для проекта.
В первую очередь было принято решение снизить даунтайм в условиях текущего хостинга. Для этого была проделана большая работа по кластеризации web-приложений, баз данных, файлов сайта и CRM компании, проведена оптимизация настроек web-приложения. Мы смогли устранить нестабильно работающую структуру серверов и продумать решение систем отказоустойчивости. Стоит отметить, что удалось также победить проблему отдельных страниц CRM, которые могли загружаться до 5-10 минут, сайт плохо держал нагрузку, скрипты проверки часто фиксировали время ответа страниц каталога 10 и более секунд.
После проведенных работ все сайты были перенесены на более современные и скоростные серверы. Был создан кластер баз данных с оптимизированным распределением запросов и последовательной проверкой доступности каждой ноды в кластере перед отправкой запроса. Кроме того, специально для потребностей клиента была реализована уникальная настройка мониторинга zabbix с смс-оповещением. В результате удалось добиться показателя доступности сайтов KPI=100%.