Uber отказался от онлайн-чатов Slack и HipChat в пользу своего uChat на базе Open Source-решения Mattermost

На прошлой неделе инженеры компании Uber рассказали в своём блоге о том, как они создали собственное решение для интернет-общения, схожее с популярными Slack и HipChat, но основанное на свободном продукте Mattermost. Их детище получило название uChat.

Работа дизайнеров Uber над боковой панелью Mattermost
Работа дизайнеров Uber над боковой панелью Mattermost / Иллюстрация с сайта Uber Engineering Blog

В компании Uber работают 14 тысяч человек, а её операции распределены по 620 городам мира. Раньше в качестве корпоративного онлайн-чата в Uber использовали популярный сервис Slack, а около года назад (весной 2016) перешли на его конкурента — Atlassian HipChat. Однако оба этих продукта не удовлетворяли потребностям Uber в «надёжном общении сотрудников на десктопах и мобильных устройствах вне зависимости от их местонахождения в мире». Основные требования Uber к онлайн-чату — это масштабируемость для растущего числа сотрудников с учётом сопутствующих расходов, а также простая интеграция с многочисленными инструментами, решающими инженерные, эксплуатационные и бизнес-задачи.

Инженеры Uber начали свои поиски с технологии Internet Relay Chat (IRC) и последующего тестирования существующих альтернатив, а пришли к созданию собственной платформы обмена сообщениями uChat, в которой активно применяются Open Source-продукты: чат Mattermost и система управления конфигурациями Puppet (корпоративный стандарт в Uber). Инженерам компании удалось перейти на новое решение за 3 месяца, обеспечив стабильную доставку более 1 миллиона сообщений в день для десятков тысяч пользователей в едином окружении.

Основные работы Uber с Mattermost были нацелены на производительность: инженеры стремились гарантировать стабильное функционирование чата для случая с 70 тысячами одновременно присутствующих там пользователей и отправляющих от 80 до 200 сообщений в секунду. Для этого были созданы специальные нагрузочные тесты (опубликованы на GitHub), а также проведён анализ пользовательского интерфейса (например, «существующие интерфейсы не позволяли производить поиск более чем по 20 тысячам каналов одновременно»), по итогам чего были сделаны необходимые изменения в коде. Далее была разработана схема деплоя нового чата с применением подхода IaC (инфраструктура как код) на базе Puppet (с модулем Puppet Code Manager). Завершающий этап — создание своих пользовательских интерфейсов (на базе React Native) для мобильных устройств на базе iOS и Android. Последние наработки тоже выложены как Open Source на GitHub.

Итог — достижение 99,9-процентной доступности с uChat, после чего использование старой системы для общения было прекращено. Инженеры Uber планируют реализовать больше возможностей в ближайшие месяцы, следуя обратной связи от своих пользователей, и внедрить в uChat дополнительные улучшения от Mattermost и его Open Source-сообщества.

Дмитрий Шурупов по материалам Uber Engineering Blog, Businessinsider.Com.




!

Если для Вас конкретно эта новость оказалась важной или интересной - пожалуйста, поделитесь ею в своей любимой социальной сети с помощью кнопок, расположенных под этим текстом. Это поможет нам в будущем делать более качественную подборку материалов, исходя из Ваших потребностей\интересов.




Коды для вставки в блог\форум

blog comments powered by Disqus


Вспомним другие новости из этого раздела?


Soft

←+Ctrl+→

Интересные новости
Apple выпустила macOS High Sierra 10.13.2Apple выпустила macOS High Sierra 10.13.2
Oracle открыла код двух проектов для Kubernetes на базе Fn project и Cluster FederationOracle открыла код двух проектов для Kubernetes на базе Fn project и Cluster Federation
В Apple HomeKit найдена опасная уязвимостьВ Apple HomeKit найдена опасная уязвимость
В ноутбуках HP обнаружен скрытый кейлоггерВ ноутбуках HP обнаружен скрытый кейлоггер
Трамп подписал закон о запрете ПО «Kaspersky Lab»Трамп подписал закон о запрете ПО «Kaspersky Lab»
Блок рекламы


Похожие новости

Kata Containers — новая веха для контейнеров Clear Containers от Intel в OpenStack FoundationKata Containers — новая веха для контейнеров Clear Containers от Intel в OpenStack Foundation
Oracle открыла код двух проектов для Kubernetes на базе Fn project и Cluster FederationOracle открыла код двух проектов для Kubernetes на базе Fn project и Cluster Federation
Представлен Amazon EKS для запуска кластеров Kubernetes в облаке AWSПредставлен Amazon EKS для запуска кластеров Kubernetes в облаке AWS
CARLA — Open Source-симулятор от Intel и Toyota для обучения беспилотных автомобилейCARLA — Open Source-симулятор от Intel и Toyota для обучения беспилотных автомобилей
GhostBSD 11.1 — обновлённая система на базе FreeBSD с MATE и Xfce для десктоповGhostBSD 11.1 — обновлённая система на базе FreeBSD с MATE и Xfce для десктопов
CNCF начала сертификацию дистрибутивов и платформ на базе KubernetesCNCF начала сертификацию дистрибутивов и платформ на базе Kubernetes
Uber открыла код вероятностного языка программирования на Python — PyroUber открыла код вероятностного языка программирования на Python — Pyro
Apache OpenMeetings 4.0 — крупное обновление Open Source-решения для веб-конференцийApache OpenMeetings 4.0 — крупное обновление Open Source-решения для веб-конференций
GitLab переходит на DCO вместо соглашения CLA для своих Open Source-контрибьюторовGitLab переходит на DCO вместо соглашения CLA для своих Open Source-контрибьюторов
AT&T добавила Kubernetes и Helm в свою промышленную облачную платформу на базе OpenStackAT&T добавила Kubernetes и Helm в свою промышленную облачную платформу на базе OpenStack
Последние новости

Подгружаем последние новости