Могут ли несколько экземпляров сервера приложений метеора работать за обратным прокси-сервером Hipache?

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

WebSocket connection to 'ws://test.local:8000/sockjs/709/gs_aliii/websocket' failed: WebSocket is closed before the connection is established.

Вот сценарий оболочки для запуска контейнеров докеров приложений и настройки хипача: http://pastebin.com/R1kuW80E

Полная настройка находится здесь: https://github.com/vlebedev/docker-test.

Я нашел следующее в проблемах хипача на github, возможно, это проблема: https://github.com/dotcloud/hipache/issues/3

С другой стороны, dotcloud (создатели hipache) хвастаются тем, что поддерживают балансировку нагрузки Meteor. И они используют hipache в качестве маршрутизатора входящих запросов. Это странно.


person Vladimir Lebedev    schedule 29.08.2013    source источник


Ответы (1)


Хорошо, я сам нашел основную причину проблемы, вот она: https://github.com/dotcloud/hipache/issues/24

Что-то не так с поддержкой веб-сокетов в хипаче с node.js >= 0.10.0. Я понизил версию node.js в контейнерах hipache и meteor до 0.8.25, и теперь все работает хорошо!

person Vladimir Lebedev    schedule 29.08.2013
comment
Примечательно, что Meteor также не имеет официальной поддержки узла 0.10. - person imslavko; 30.08.2013