SockJS или Socket.IO? Стоит ли перекодировать страницу на основе ajax?

Какая из них лучше: Socket.IO или SockJS и каковы самые большие различия?

Насколько сложно перестроить полностью основанную на ajax страницу на странице node.JS/socket.io? Должен ли я перекодировать абсолютно все? Есть ли хорошие учебники о том, как это сделать? Стоит ли это делать (по вашему мнению)?

Ответ 1

SockJS имеет больше вариантов на стороне сервера. Если вы не хотите привязываться к Node.js, то это может быть вариант. Масштабирование, по-видимому, работает лучше всего, из некоторых тестов, использующих PyPy для размещения серверной части.

socket.io имеет больше вариантов транспорта, включая Flash. Даже если вам не нравится флеш, у него есть опция для транспорта реального WebSocket, который может работать лучше, в зависимости от желаний вашей реализации.

Дело в том, что либо выполнит свою работу, это просто зависит от ваших желаний. Я бы предложил создать тривиальное приложение в каждом и посмотреть, будет ли один API более естественным для вас.

Лично я больше склонен использовать socket.io... Я также скажу, что если вам нужно масштабировать с помощью кластеров, вам, вероятно, также понадобится наметить стратегию использования pub/sub server (например, как redis), поскольку разные запросы могут поступать в разные процессы, которые не разделяют состояние памяти.


Также стоит отметить, существует ли аналогичная структура для .Net, называемого SignalR...