#javascript #concurrency #comet
#javascript #параллелизм #comet
Вопрос:
У меня есть приложение Comet, в котором может быть открыто сразу несколько экземпляров. Это означает множество одновременных подключений. Не должно быть слишком сложно изменить имя хоста соединения, чтобы преодолеть ограничение на одновременное подключение браузера. Мой вопрос: как это будет справедливо для обычного интернет-соединения? Столкнусь ли я с проблемами производительности?
Ответ №1:
Обычно приложения comet не передают много данных, но поддерживают соединения открытыми долгое время, поэтому на стороне клиента все должно быть в порядке. На стороне сервера у вас могут возникнуть проблемы, если вы превысите количество доступных TCP-портов, но «сохранение соединения открытым» — это скорее учет, чем передача. Короткий ответ был бы таким: «зависит от того, какой объем данных вы хотите передать». Однако следите за ограничениями сеанса аппаратных брандмауэров и т.д. Вот несколько полезных советов: http://www.metabrew.com/article/a-million-user-comet-application-with-mochiweb-part-1
На всякий случай ответ: Если вы размещаете это на домашней системе, ждите неприятностей, потому что у домашних маршрутизаторов обычно возникают проблемы с большим количеством открытых сеансов, переполняющих их брандмауэр / антиддос / любые пулы.