Какой механизм сокетов node.js мне следует использовать?
Я нахожусь в начале проекта по созданию приложения для чата в реальном времени, охватывающего веб-сайт и приложение для Android. Поскольку я хочу предотвратить непрерывный опрос всех видов вызовов API, я хочу использовать веб-сокеты (с которыми у меня нет опыта), и в процессе я подумал, что было бы неплохо изучить node.js. Поэтому мне нужно начать использовать библиотеку websockets для node.js. Для этого я вижу, что есть целый список вариантов. Больше всего я читаю по имени socket.io.
Вокруг SO я также читал, что socket.io v0.9 был довольно глючным, и я вижу множество ссылок на то, что engine.io является новым бэкендом socket.io из socket.io версии 1.0, которая предположительно "прямо за углом". Хотя все эти сообщения относятся к 2012 году ( например, к этому), и когда я заглядываю на сайт socket.io, я вижу, что они все еще на v0.9, что заставляет меня задуматься над парой вещей:
- socket.io все еще активно развивается?
- Является ли socket.io жизнеспособным вариантом или мне нужно постоянно находиться в другой библиотеке?
- Какой из них вы бы порекомендовали для легкого запуска, или к настоящему времени в node.js реализованы хорошие сокеты (например, с помощью net.Socket)?
Все советы приветствуются!
1 ответ
socket.io все еще активно развивается?
https://github.com/learnboost/socket.io
мастер: автор 7 часов назад
Так что это действительно в разработке сейчас.
Является ли socket.io жизнеспособным вариантом или мне нужно постоянно находиться в другой библиотеке?
Мы используем socket.io в нескольких проектах, и это нормально. Может быть, вы должны настроить свои значения сердцебиения. Для нас это:
app.io = io.listen(app);
logger.info('Setting up basic configuration.');
app.io.set('heartbeat timeout', 50);
app.io.set('heartbeat interval', 20);
app.io.set('browser client minification', true);
app.io.set('store', new io.RedisStore(ioStoreSettings)); // also don't use in-memory store, it is hardly not recommended