Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программное обеспечение > Помогите выбрать XMPP/Jabber сервер


Автор: CaligoSpiritus 13.10.2008, 17:44
Модерам: Долго думал, в каком разделе постить, решил тут, если ошибся, перенесите, куда следует, пожалуйста.

И так. Моя команда делает социальную сеть. Используеме платформу Java и БД Oracle. У нас по проекту должен быть свой мессенджер (по совместительству клиент к некоторым отличным от IM сервисам сети). За открытость, универсальность и изобилие готовых решений выбран XMPP/Jabber, клиент будем писать сами, исходя из требований, а вот на счёт сервера нужен совет.
Дело в том, что пользовательская база должна использоваться та же, что у социальной сети, у нас пользователи храняться в БД (Oracle), соответственно аутентификация их должна происходить относительно нашей базы с использованием нашего метода шифрования хранимых паролей и тп. К тому же, автоматически контактами должны появляться френды пользователя из нашей социальной сети (так же обязательно должна быть возможность добавления контактов из других xmpp/jabber сетей - Google Talk, LJ_talk, просто Jabber и т.п., ну и поддержка транспортов - лучше всего, наличие родных транспортов в протоколы icq, yahoo messenger, желательно ещё MSN).
Ещё важный параметр - поддержка (native или хотябы возможность подключения) jingle (для аудио связи).
Кроме того, сервер должен масштабироваться (так как у социальной сети по определению будет много пользователей и их будут провоцировать пользоваться клиентом, количество одновременно залогиненных пользователей будет расти и почти сразу будет довольно большим - ведь будет и web-клиент, встроенный прямо в страницы сайта: как, например, в GMail.
Посоветуйте, пожалуйста, сервер, который подходит под эти требования.

Автор: Akella 14.10.2008, 09:06
CaligoSpiritus, дык уже есть такая тема  smile  Неужели не видно рядом, а?

Добавлено через 29 секунд
Даже когда тему создавал, программеры же спецом показываю список похожих тем для кого?

Автор: CaligoSpiritus 15.10.2008, 11:23
Akella, Да, есть похожая тема, но она совершенно не такая, там XMPP сервер совершенно для другой цели выбирается.

Автор: Akella 15.10.2008, 13:26
Сервер... он и в африке сервер. Возьми Openfire.

Добавлено через 1 минуту и 28 секунд
Цитата(CaligoSpiritus @  13.10.2008,  17:44 Найти цитируемый пост)
К тому же, автоматически контактами должны появляться френды пользователя из нашей социальной сети (так же обязательно должна быть возможность добавления контактов из других xmpp/jabber сетей - Google Talk, LJ_talk, просто Jabber и т.п., ну и поддержка транспортов - лучше всего, наличие родных транспортов в протоколы icq, yahoo messenger, желательно ещё MSN).

это всё должен делать один жаба-сервер?  smile 

Автор: CaligoSpiritus 16.10.2008, 10:22
Цитата(Akella @  15.10.2008,  14:26 Найти цитируемый пост)
это всё должен делать один жаба-сервер?  smile  

Не совсем...
Это должен делать наш софт, но сервер должен подходить для таких "извращений" над собой. То есть требования именно к серверу:
Возможность кластеризации с load-balancing (в перспективе тысячи (десятки тысяч) пользователей online), удобный интерфейс к которому можно прикрутить аутентификацию пользователей по собственной БД, удобный интерфейс для управления контактами.
Поэтому, скорее всего, сервер должен быть open source, api с таким богатым набором возможностей, который нам нужен, скорее всего не обладает ни одно готовое решение.

Цитата(Akella @  15.10.2008,  14:26 Найти цитируемый пост)
Сервер... он и в африке сервер. Возьми Openfire.

Отнюдь, всё решают требования, под нашу "африку" подходит далеко не каждый ;)

Посмотрел OpenFire - припомнил, что он у меня даже стоит на тестовом серваке - в прошлом году тестил collaboration в NetBeans, там это дело через XMPP работает. В принципе, open source - значит, можно переделать под свои нужды, к тому же есть clastering plugin для, соответственно, кластеризации, он, правда, платный, но если не слишком дорого и действительно делает своё дело, то можно и купить. 
Во, обнаружил ещё штуку - Connection Manager for OpenFire - каждый connection manager даёт возможность подключить 5 тыс юзеров одновременно, блин, это ж сколько их придётся ставить?! Если на первых порах 1-2 штуки хватит, то уже через год, всё это повиснед. Ведь пока проект не начнёт окупаться он будет висеть на одном самосборном серваке. На всяк случай конфигурация сервака:
4ядерный проц (с моделью ещё не определились), 4ГБ оперативки, RAID 1 (2x 500 ГБ) - это для начала, потом будем ставить отдельный storage с RAID 1+0, ОС: Red Hat Enterprise, БД: Oracle, App server: GlassFish

Автор: Akella 16.10.2008, 22:57
Цитата(CaligoSpiritus @  16.10.2008,  10:22 Найти цитируемый пост)
Возможность кластеризации с load-balancing (в перспективе тысячи (десятки тысяч) пользователей online), 

неужто пишите однокашников или одногруппников, или однокурсников?

Добавлено через 1 минуту и 38 секунд
Цитата(CaligoSpiritus @  16.10.2008,  10:22 Найти цитируемый пост)
На всяк случай конфигурация сервака:

рекомендую мамку ставить с аппаратным раидом и с возможностью горячей замены винтов

Автор: CaligoSpiritus 17.10.2008, 09:41
Цитата(Akella @  16.10.2008,  23:57 Найти цитируемый пост)
неужто пишите однокашников или одногруппников, или однокурсников?

Нет, круче smile Хотя, своё - оно всегда круче smile 
Цитата(Akella @  16.10.2008,  23:57 Найти цитируемый пост)
рекомендую мамку ставить с аппаратным раидом и с возможностью горячей замены винтов 

Угу, так и делаем, что касается системного и администрирования БД у нас профессионал в команде. Просто на нужную конфигурацию может не хватить денег с самого начала, поэтому бум апгрейдить поэтапно.

Кстати, оказалось, что OpenFire поддерживает привязку к БД любой структуры - через указание в конфигурации драйвера JDBC и своих SQL запросов smile Яхууу, это то, что было нужно. Остаётся к нему только свой механизм рассылки сообщений от сервера привязать smile
Всё, будем юзать OpenFire.

Автор: Akella 17.10.2008, 11:31
смотри, у него проблемы с русским

Автор: CaligoSpiritus 20.10.2008, 14:04
Какие проблемы с русским? Он же unicode юзает? МБ, проблемы скорее с БД встроенной или ещё с чем? У Java прекрасная поддержка уникода, а OF вродь на ней... А БД у нас будет Oracle 10g или Oracle 11i, там тоже проблем с уникодом быть не должно.

Автор: Akella 20.10.2008, 19:14
Цитата(CaligoSpiritus @  20.10.2008,  14:04 Найти цитируемый пост)
Какие проблемы с русским? Он же unicode юзает? 

я описывал в соседней теме

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)