Ответы пользователя по тегу Erlang
  • Как лучше построить архитектуру серверной части на Erlang (Cowboy) для обмена через WebSocket с мобильными клиентами?

    lexxpavlov
    @lexxpavlov
    Программист, преподаватель
    Если у вас очень большая нагрузка (или планируется очень большая нагрузка), и один сервер не справляется, то тогда вариант с отдельными воркерами будет более гибким. (Вы даже сможете делать воркеров на разных языках.)
    Если у вас всем занимается один сервер, то лучше использовать только сам Эрланг - он прекрасно держит висящее пассивное соединение. Как данные появятся (их возвратит колбек), так они сразу уйдут клиенту, а пока данные готовятся, то ресурсы на поддержание коннекта практически не расходуются.
    Плюс, насчёт нескольких серверов - Эрланг сам умеет работать на нескольких серверах, так что второй вариант выглядит предпочтительнее. Но первый - гибче. Больше гибкости для последующего развития сервиса.

    Хм. Перечитал ваш вопрос. Воркер у вас только на обработку данных. А Эрланг будет в любом случае держать соединение. Получается, в первом варианте профит будет в случае, если в качестве воркера будет использоваться не-Эрланг, который будет (значительно) быстрее обрабатывать эту специфическую задачу (ежели у вас задача сложно обрабатывается на самом эрланге).
    Ответ написан