Какой лучший открытый протокол для программного обеспечения чата? - PullRequest
14 голосов
/ 11 ноября 2010

Я сравниваю между IRC, XMPP и третьим собственным сервером, который у меня есть.

Каковы плюсы и минусы каждого из них, и предлагайте другим, если вы знаете какие-либо из упомянутых.

Ответы [ 3 ]

23 голосов
/ 21 марта 2012

Я знаю, что это очень старый пост, и, скорее всего, оператор не увидит ответ (или, возможно, даже больше не заинтересован), но я бы лично развернул IRC поверх XMPP. Основной причиной этого является объем памяти, занимаемый серверами XMPP, когда все больше и больше клиентов XMPP подключаются. В одном случае я не видел надежной надежности, когда более 200 пользователей подключаются и активно начинают использовать службу (XMPP MUC, передача файлов, шифрование от клиента к клиенту и т. Д.).

В отличие от IRC, я лично видел тысячи подключений к одному экземпляру, и использование памяти обычно на 60-70% меньше. IRC-серверу не нужно анализировать сообщения, передаваемые клиентом, передача файлов осуществляется клиент-клиентом через DCC, а дизайн намного, намного проще, чем XMPP на основе XML.

Вы можете столкнуться с netsplits, если вы запускаете несколько серверов и разрешаете клиентам выбирать, к какому серверу подключаться. Но чем нестабильный IRC-сервер отличается от нестабильного XMPP-сервера? И если сервер IRC netsplits, он не переводит всех клиентов в автономный режим - только тех, кто подключен к нему. Таким образом, воздействие минимально по сравнению с XMPP (если вы не делаете s2s).

Несмотря на это, протокол IRC более упрощен по своей природе, может обрабатывать на несколько порядков больше клиентских подключений, чем XMPP, при той же загрузке памяти, использует меньшую полосу пропускания на проводе, не требует аутентификации (хотя вы можете добавить эту функцию) и т. д.

Кажется, я не единственный, кто так чувствует: http://web.archive.org/web/20131128110041/http://laltromondo.dynalias.net:80/~iki/informatica/soft/xmpp_vs_irc/.

Для будущих читателей этого поста рассмотрите IRC. Это может просто избавить вас от головной боли в будущем.

16 голосов
/ 12 ноября 2010

Просто зайдите на XMPP.

Известно, что серверы имеют большой масштаб , он может работать с веб-клиентом с минимальными трудностями (если это то, что вам нужно) с отличными библиотеками для его поддержки , и, XEP-45 указывает, как именно должны работать клиенты и серверы.

3 голосов
/ 05 мая 2012

Возможно, вы захотите рассмотреть PSYC .

Это как сочетание лучших функций XMPP и IRC, а затем еще нескольких:

Поскольку он может обеспечить большую часть того, что вы ожидаете от IRC, вы можете перед тем, как начать работу с IRC-сетью, рассмотрите это. PSYC решает проблемы IRC политические, проблемы с аутентификацией и масштабируемостью выбор дополнительных функций, которые выходят за рамки того, что вы ожидаете от IRC-сервер, по-прежнему psyced, может использоваться со всеми IRC-клиентами, которыми вы являетесь привыкли с. До определенной степени PSYC и psyced также поддерживают то, что вы ожидаете от Jabber, и даже сам XMPP, но вы можете столкнуться с проблемами в зависимости от ваших особых требований. Психед также XMPP-сервер и шлюз одновременно. Протокол PSYC способен доставлять зашифрованные данные изначально, хотя мы только собираюсь начать использовать это в 2012 году.

...