Подтвердить что ты не робот

Хотите выбрать из: Node.js Meteor.js Ratchet RabbitMQ для веб-чата реального времени (форум)

Я сделал несколько исследований, прежде чем задавать этот вопрос, но я не мог найти конкретного ответа на мою ситуацию.

Я хочу создать WebChat с синхронизацией в реальном времени с БД на сервере. (MySQL или MongoDB - все в порядке) Но о синхронизации данных есть несколько способов сделать это:

  • PHP + websockets от Ratchet, и моя работа заключается только в создании протокола JSON для аутентификации и обмена сообщениями. Многие документы, много учебников. (я знаю, что веб-сайты не работают в IE, но неважно)

  • node.js + socket.io - есть такое же техническое решение, как 1. но на другом языке.

  • node.js + meteor.js(sockJS) - кажется, что ребята все работали, и мне не нужно добавлять какие-либо функции протокола, просто закодируйте логику. Но как насчет высокой нагрузки? Как насчет документации... очень молодой рамки.

  • Tornado + TornadIO2 (socket.io) + RabbitMQ

Может ли кто-нибудь сравнить RabbitMQ с meteor.js? По производительности. Может ли кто-нибудь сказать, какой путь лучше?

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

Пожалуйста, дайте мне свое мнение. Спасибо!

4b9b3361

Ответ 1

Я рекомендую сервер websocket на основе php: Ratchet. Я использую его, и это - сравнительный анализ серверов webSocket между Ratchet и SockJS.

Если вы хотите сделать веб-чат, тогда вам нужна лучшая производительность и хорошая мощность процессора. У Ratchet есть хорошие решения для обработки сообщения между клиентом и сервером. Он имеет широковещательную передачу сообщений и специальную отправку сообщений для группы клиентов, а также имеет хороший контроль на событиях сервера, например, обновление mysql ZMQ Libarary.Ratchet и ZMQ находятся поверх Reactphp Проект

Также вы можете увидеть WebRTC (технология, связанная с WebSockets), что является еще одним усилием для улучшения коммуникационных возможностей современных веб-браузеров. WebRTC - это одноранговая технология для Интернета. Первыми приложениями для WebRTC являются голосовые и видеочаты в режиме реального времени. WebRTC уже является неотразимой новой технологией для мультимедийных приложений, и в Интернете доступно множество доступных примеров приложений, которые позволяют вам протестировать это с помощью видео и аудио через Интернет. Проверьте ссылку

Ответ 2

Для синхронизации данных веб-клиента данных в реальном времени решения, о которых я знаю, следующие:

Ответ 3

К сожалению, я могу говорить только за первые три. Мой опыт работы с веб-сайтами в целом (включая socket.io) был подпараметром, включая спорадические разъединения и запутанную систему соединений. С учетом сказанного, однако, он очень мощный и разнообразный. С помощью websockets вы можете запускать сервер или клиент практически на любой платформе. Socket.io ограничивает это до некоторой степени, но на самом деле это всего лишь подмножество веб-карт. Однако Метеор - совершенно другой мяч. Хотя сначала это сбивает с толку, я был очень впечатлен тем, насколько легко создавать и развертывать приложения. Он мощный и гибкий. В зависимости от того, насколько сложна WebChat, любой из них был бы хорошим вариантом. Если вы хотите сделать что-то более простое, я бы пошел с socket.io. Для более сложных я бы рекомендовал метеорит.

Надеюсь, что это поможет.