amoCRM: как мы ускорили доступ к файлам для клиентов в 10 раз

Компания

Отрасль

Офисов

Клиентов

amoCRM — разработчик одноименной системы для учета сделок и увеличения продаж. Долгое время в компании использовали облако AWS для хранения клиентских файлов. Но, когда понадобилось соблюдать закон о персональных данных и повысить доступность файлов для клиентов в России, задумались о сотрудничестве с российским провайдером.

О том, как компании удалось за неделю перенести в облако VK Cloud 20 ТБ данных, сократить время доступа к файлам в 10 раз и удешевить инфраструктуру, рассказал директор по производству amoCRM Никита Бессуднов.

О компании

amoCRM — система учета клиентов и сделок, которая помогает бизнесу увеличивать продажи. Все заявки, поступающие из форм на сайте, по электронной почте, телефону, через социальные сети и чаты, фиксируются и добавляются в воронку продаж.

Преимущество системы — в интеграции с огромным количеством каналов связи, что позволяет автоматизировать рутинные операции и снизить среднюю стоимость одного контакта с клиентом. Если же какого-либо функционала не хватает, компания может доработать систему самостоятельно. Система предоставляет большое количество вариантов по кастомизации и доработке.

Новый провайдер — для решения проблем

В начале пути мы работали с bare metal для хранения файлов, но позже избавились от физических серверов. Нам нравилось, что мы можем влиять на железо и не зависеть от виртуализации, но понимали — инфраструктуре не хватает гибкости и мобильности. А хранение файлов на дисках обходилось бы слишком дорого. И мы выбрали облачное решение, разместив клиентские файлы на мощностях Amazon. Параллельно работали с американским провайдером Rackspace — у него до сих пор храним файлы клиентов из США.

В 2018 году решили сотрудничать еще и с российским провайдером, он потребовался по нескольким причинам:

Недоступность файлов из-за блокировок. В 2018 году в России из-за блокировок Роскомнадзором IP-адресов Amazon клиенты не могли загружать и скачивать файлы — проблему требовалось срочно решать. Интерфейс amoCRM также начал некорректно отображаться у клиентов: слетали шрифты и не подтягивались изображения.
Хранение персональных данных в России. 152-ФЗ обязал компании хранить персональные данные на территории страны — для этого требовался провайдер с дата-центром в России.

В общем, у нас было две проблемы, которые требовалось срочно решать. Мы рассчитывали, что новый провайдер поможет нам их закрыть, и мы снова будем работать в штатном режиме.

Хранилище VK Cloud: высокая доступность, соответствие ФЗ-152 и низкая цена

Мы рассматривали решения трех российских провайдеров и в итоге выбрали объектное S3-хранилище VK Cloud.

Стоимость облачного хранилища. Сейчас мы тратим на хранение и скачивание столько же, сколько платили Amazon только за хранение.
Возможность быстрого переезда. У нас скопился большой объем файлов — 20 терабайт. Было важно перевезти их в новое облако как можно быстрее, чтобы клиенты ничего не заметили. Из документации мы узнали, что хранилище VK Cloud совместимо с протоколом S3, который использует Amazon. Значит, нас ждал более-менее безболезненный переезд.
Размещение персональных данных. Дата-центры VK Cloud расположены в России, а облако аттестовано в соответствии со 152-ФЗ — это нас полностью устраивало.
Хороший сервис от команды VK Cloud. Нам предоставили документацию со всей необходимой информацией. Специалисты VK Cloud рассказали, какие библиотеки можно использовать и как быстро адаптировать решения для загрузки файлов.

Миграция 20 ТБ данных всего за одну неделю

Нам предстояло перевезти 20 терабайт файлов из Амстердама на площадку VK Cloud. Изначально шла речь о том, чтобы передавать файлы из Амстердама в Москву, а затем направлять их на площадку VK Cloud. Но мы рассмотрели и другой вариант: взяли промежуточный сервер нашего провайдера (у него часть оборудования находилась как раз в Амстердаме), который по выделенному внутреннему каналу вначале скачивал файлы из AWS, передавал их на свой сервер в Москву, а уже оттуда — в облако VK Cloud. На первый взгляд, схемы выглядят одинаково, но серия тестов показала: второй вариант быстрее на 5–7%. Используя его, мы бы сэкономили шесть-семь часов.

Еще для передачи такого объема требовалось временно расширить интернет-канал с 1 Гбит/сек. до 10 Гбит/сек. — об этом мы заранее договорились с провайдером.

Передача файлов — процесс не мгновенный, потому мы написали несложную программу на Golang. Она позволяла отправлять файлы в несколько потоков и постепенно переключать аккаунты клиентов на новое хранилище. Естественно, мы заранее протестировали решение, рассчитали примерное время, разбили аккаунты на несколько групп и только потом запустили все это в работу. Чтобы исключить ошибки, весь процесс передачи непрерывно контролировали.

В итоге переехали за 6–7 дней и сравнительно небольшие деньги. Еще один рабочий день ушел на проверку целостности файлов — к счастью, битых среди них не оказалось.

Если бы мы перевозили данные на физических носителях (вполне распространенная практика для таких объемов информации), нам бы понадобилось 45 SSD-накопителей стоимостью 25 000–30 000 рублей каждый — суммарно около 2 млн рублей. Так что на переезде нам удалось неплохо сэкономить.

Итоги переезда: сокращение времени доступа, экономия и хорошая техподдержка

Сейчас у нас три облачные площадки для хранения клиентских файлов. VK Cloud — основной провайдер, AWS используем в качестве резерва, а в Rackspace храним файлы американских клиентов. Благодаря такому решению получили несколько преимуществ:

Сокращение времени доступа в РФ в 10 раз. Файлы территориально ближе к российским клиентам, за счет этого сократилось время доступа. Если раньше клиенты могли ждать начала скачивания 1 секунду, то теперь — 0,1 секунды.
Экономия на хранении файлов. У нас большие объемы и долгосрочный договор с VK Cloud — услуги Amazon стоили в три-четыре раза дороже.
Резервное копирование у двух провайдеров. Клиентские файлы мы храним на двух площадках. Если откажет одна, то можем быстро переключить трафик на другую, и клиенты этого не заметят. Схемы резервирования различаются для российских и глобальных клиентов: для российских основная площадка — VK Cloud, резервная — AWS.
Неограниченное масштабирование. Облако полезно, если есть скачкообразное потребление ресурсов. Например, интернет-магазину нужно пройти пик в «черную пятницу», а затем вернуться к нормальному потреблению. У нас не бывает распродаж, но случаются релизы, и мы подстраиваем потребление мощностей с их учетом. А стандартные ресурсы позволяют без проблем обрабатывать текущий трафик и возможные атаки.
Хранение персональных данных в России. Мы адаптировали работу согласно российскому законодательству и не нарушаем закон.
Быстрое решение технических проблем. У нас есть отдельный чат с командой VK Cloud. Если возникают проблемы, мы пишем в чат и получаем ответ в течение нескольких минут.

Удобство облачных технологий

Онлайн-сервисам можно начинать работать с облаком сразу, как только возникает вопрос о хранении клиентских файлов. Использовать для этого физические носители неудобно и невыгодно: они обходятся дорого, их нужно постоянно докупать. То же самое справедливо и для сервисов, которым нужны вычисления. Лучше переносить их в облачную инфраструктуру, дающую больше мобильности.

Мы не новички в облаках, но заново открыли для себя их преимущества после переезда на платформу VK Cloud. Наш главный приоритет – хранилище S3. Облачную инфраструктуру используем только для внутренних проектов. Мы пропустили подходящий момент для развертывания в облаке всей инфраструктуры. Сейчас в облаках у нас хранятся только клиентские файлы, основная инфраструктура — на железе. Чтобы полностью переехать в облако сейчас, нам нужно перепрограммировать систему и переделать под нее часть хранилищ — это долго и дорого. По этой причине полностью переходить на облака не планируем.

Но планы на будущее есть. Нам нравятся контейнеры: они гибкие, быстро разворачиваются в облаке и сразу готовы к работе. На них мы экспериментировали с нейросетями. Пока это было разовое мероприятие, но есть вероятность, что в будущем мы снова вернемся к самообучающимся системам, и тогда потребуются уже полноценные облачные вычисления, в том числе на графических картах.

Какие выгоды мы получили от хранилища VK Cloud

Снижение стоимости хранения и скачивания файлов, высокую надежность хранения.
Хранение персональных данных клиентов в соответствии со 152-ФЗ.
Клиенты в 10 раз быстрее получают доступ к файлам, так как хранилище находится на территории РФ.
Возможность быстро получить дополнительные мощности во время релизов.

Попробуйте наши сервисы

После активации аккаунта мы свяжемся с вами и начислим 3 000 рублей на ваш счет VK Cloud, чтобы вы смогли протестировать сервис в течение 60 дней.

Или оставьте с индивидуальным расчетом

40+ готовых сервисов