Чем engine.io отличается от socket.io?
Похоже, что в LearnBoost появился новый проект engine.io, который теоретически похож на socket.io. 1) По каким сценариям вы бы использовали один против другого? 2) Для новых проектов, которые требуют связи на основе сокетов HTML5 через node.js, должны ли мы использовать engine.io, а НЕ socket.io?
2 ответа
С https://github.com/LearnBoost/engine.io
Основной целью Engine является обеспечение максимально надежной связи в реальном времени. В отличие от предыдущего ядра socke t.io, оно всегда сначала устанавливает соединение с длинным опросом, а затем пытается обновить его до лучших транспортов, которые "проверены" на стороне.
За время существования проектов socke t.io мы обнаружили бесчисленные недостатки, связанные с использованием HTML5 WebSocket или Flash Socket в качестве первых механизмов подключения.
И то, и другое явно является правильным способом установления двунаправленной связи, а HTML5 WebSocket - это путь будущего. Однако для удовлетворения большинства потребностей бизнеса альтернативные традиционные механизмы HTTP 1.1 так же хороши, как и предоставление того же решения.
engine.io - новое ядро для socket.io, поэтому используйте socket.io, если вам не нужен какой-либо другой API:-) По словам автора обоих модулей, engine будет интегрирован в socket.io 1.0: http://groups.google.com/group/socket_io/browse_thread/thread/6e759a508b231b4
"Что дальше
1.0 уже не за горами, и в нем присутствует ядро следующего поколения Engine.IO. Ветвь 0.9 будет получать только обновления обслуживания для обеспечения максимальной стабильности. "