Предложение для хорошего не стороннего простого чата - PullRequest
2 голосов
/ 20 июля 2011

У меня есть социальная сеть, которая хочет создать чат для определенной группы пользователей. Я ищу очень простой не сторонний чат, в котором предпочтительно, чтобы имя пользователя автоматически использовалось в чате на основе его авторизованного идентификатора, который используется при входе на сайт (так что автоматическая синхронизация входа в систему) Если кто-то знает ОЧЕНЬ простой тот, где вы просто набираете свое имя и общаетесь, это также подойдет.

Вот наглядный пример того, что я ищу. Это снимок экрана, использованный в стороннем чате, который я использовал - функциональность и визуальность его идеальны, за исключением того, что вы должны войти на их сайт, чтобы использовать его.

enter image description here

Ответы [ 2 ]

1 голос
/ 20 июля 2011

Я делал это в прошлом, настраивая локальный сервер Jabber.По крайней мере, есть пара готовых JavaScript-клиентов, которые помогут вам начать работу.

1 голос
/ 20 июля 2011

Я знаю, что это дерьмовый ответ, но я бы построил его сам. Сложная часть - это подталкивание с сервера, я бы проверил http://socket.io/ на стороне клиента и какой-то неблокирующий сервер на бэкэнде (на данный момент узел наиболее раскручен, но есть множество вариантов.), поскольку длительные постоянные соединения довольно быстро поставят большинство классических серверов на колени. Но как только вы это сделаете, все остальное будет довольно просто, и вы получите преимущество тесной интеграции с вашим приложением.

ОТВЕТ НА ВОПРОС В КОММЕНТАРИИ: зависит от того, какая у вас платформа. Например, я знаю, что ASP.net будет делать 4 рабочих на ядро. Таким образом, на четверке вы получаете 16 рабочих, которые обслуживают все ваши нестатические запросы. Таким образом, если бы вы работали на 4-х ядерном сервере, 16 пользователей с постоянными соединениями полностью блокировали бы доступ к серверу. Ruby и python становятся немного сложнее, но обычно их число будет еще ниже. Честно говоря, я не знаю достаточно о том, как php работает на этом уровне, но я думаю, что история будет похожей.

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

Все, что говорится, из того, что звучит, ответ Йанса, вероятно, больше подходит для вашей ситуации. Но опять же, это потому, что Jabber был разработан специально для постоянных соединений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...