Привет.
На проект необходимо интегрировать чат для пользователей. Мои критерии:
— «легкость», в плане пожирания железа, лишние фишки не нужны, только чат «один на один»
— возможность горизонтального масштабирования
— сохранение истории переписки
— вменяемо написанный адаптируемый по дизайну web клиент с выделенной view частью
— сервер на PHP был бы вообще идеальным вариантом, так как это мой родной язык. Я имею ввиду обработку событий конечно, а не реализацию comet.
Если придется писать самому, рассматриваю варианты
1) nginx comet + php + redis + web client
2) jabber + web client. Такое знакомые ребята делали, но говорят что не нашли такую связку с хранением и получением истории сообщений с сервера. Плюс мне так необоснованно кажется, что jabber сервера в итоге будут более ресурсозатратным по железу решением, чем первый вариант.
По джаберу:
Используйте ejabberd, он на erlang и довольно легко расширяется. При желании можно создать свои схемы и получать любую информацию, в том числе и историю. Решение, конечно, сложное, но интересное. Плюс дает преимущество использовать нативные клиенты.
Писать свои схемы для ejabberd для получения истории и дорабатывать клиент соответствующим образом — проще тогда уже велосипед
>> nginx comet + php + redis + web client
собрать.