На чём посоветуете поднять backend для мессенджера?



На чём посоветуете поднять backend для мессенджера?

Камрады, посоветуйте какие нынче есть варианты реализации backend части для простого мессенджера? По сути нужен надёжный websocket сервер, который бы не терял сообщения и была бы поддержка fallback на какой нибудь long polling (или grpc?) в случае если веб-сокет не коннектит по разным причинам.

В идеале опенсорс проект на golang который бы умел еще и в кластере работать.

Нагрузки (для начала) не большие – до 50-100 пользователей онлайн.

ps. ноду не предлагать..

1262   15  

Comments

  1. Timur Hairullin
    Timur Hairullin 6 лет назад
    А готовый xmpp чем плох?
  2. Alexey Kuznetsov
    Alexey Kuznetsov 6 лет назад
    matrix
  3. Станислав Осипов
    Станислав Осипов 6 лет назад
    Мы на Яве сделали
  4. Алексей Тимановский
    Алексей Тимановский 6 лет назад
    А я бы ноду посоветовал. Ну и бизнес обвязку на чем-нибудь веб-классическом - python, ruby, php
  5. Макс Лапшин
    Макс Лапшин 6 лет назад
    собственно, Тимур дело говорит. Можно взять ежика из коробки.<br><br>Но у вас явно выглядит не задача сделать решение, а нагрузить имеющуюся команду.
  6. Александр Казаков
    Александр Казаков 6 лет назад
    Go если быстро, erlang если найдёте спеца
  7. Роман Тимофеев
    Роман Тимофеев 6 лет назад
    https://github.com/centrifugal/centrifugo ?
  8. Михаил Буйлов
    Михаил Буйлов 6 лет назад
    Мы запроксировали вебсокеты в longpool через openresty (nginx + lua модуль + lua библиотеки)
  9. Алексей Преображенский
    Алексей Преображенский 6 лет назад
    Пришли экс-яндексоиды и токсично пердят в коментах. Не слушайте их, дух старой школы живёт только в чистом си, где программисты ебашатся по хардкору, где пацаны живут энергией, молодостью и ебут лонгполлинг в рот. Только C99, только хардкор!<br><br>Короче, если не хотите выглядеть, как эта копипаста, берите готовый ejabberd.<br><br>Ваш токсичный экс-яндексоид.
  10. Владимир Вологжанин
    Владимир Вологжанин 6 лет назад
    tinode
  11. Vitaly Levchenko
    Vitaly Levchenko 6 лет назад
    Я бы взял что-то готовое, типа Firebase. Если хватит функциональности — это лучшее для прототипа.
  12. Константин Рябов
    Константин Рябов 6 лет назад
    https://yalantis.com/blog/how-to-build-websockets-in-go/ ближе к концу разные библиотечки на go
  13. Константин Рябов
    Константин Рябов 6 лет назад
    https://godoc.org/github.com/gobwas/ws
  14. Илья Зеленчук
    Илья Зеленчук 6 лет назад
    Предлагаю пообщаться с нужным спецом на https://bigxp.ru/<br><br>Есть сотрудники Яндекса, Гугл, ФБ, Контур и т.д.<br>Если сложно определиться, помогу выбрать)
  15. Юрий Насретдинов
    Юрий Насретдинов 6 лет назад
    Господа, советующие взять что-то готовое вроде XMPP сервера ejabberd дело говорят, вроде как. Но, как мне кажется, вопрос сам по себе странный. Это же вроде группа про хайлоад, а вопрос про 50-100 пользователей онлайн. Насколько вы хотите вырасти? Писать свои решения совершенно точно будет иметь смысл, если вы хотите хотя бы ~1 млн одновременных онлайн клиентов — в опен сорсе таких решений, насколько я знаю, нет. Если вы не хотите столько, то причем тут эта группа?