Всем здравствуйте!
Под конец рабочего пятничного дня, решил все-таки задать вопрос.
Есть сайт на обычном хостинге.
Есть VPS хостинг.
На сайте пытаемся создать чат, в идеале подобие slack
Five Open-Source Slack Alternatives.
Но коллеги накидали вместо одного из готовых решений, свое на node.js + socket.io, пока очень примитивное, с целью с этим всем разобраться.
Весь остальной сайт (авторизация) на php + mysql.
У всех мало опыта с этим, вчера получилось залить чат на VPS, где уже настроен Apach.
Получилось, что на 80 порту у нас все как на обычном хостинге, а на 3000 порту чат.
Соответственно придется страницу с чатом писать на node.js полностью, дополнительно решать проблему с авторизацией (
одно из решений ).
Но для меня более непонятно, что делать с этим 3000 портом, как сделать чтобы он отображался как обычная страница и не возникало проблем с теми, у кого этот порт закрыт?
решение, в котором пока не могу разобраться
Но поют мне, что это будет костыль, так ли это?
С этими мыслями стал искать решения на php. Как понял, их два:
1) Комет сервер
comet-server.ru
2) php сокеты, в которых вообще для меня пока темный лес
Наткнулся на статью
Создание чата на PHP,
github. Но не пойму, подходит ли это решения для нашего проекта?
Ну и собственно вопросы:
1) Правильно ли будет, что весь сайт и логика на php и mysql, а одна страница с чатом на node.js?
Если скорее да, чем нет, то:
2) Решаем ли вопрос с отличным от 80, портом?
3) Лучше использовать готовые решения (нравится
lets-chat, но не понятно справимся ли мы с его кастомизацией) или писать свое?
4) Если свое (вариант неплохой, так как очень хочется разобраться в node.js), то как сообщения можно организовать с историей? Стоит ли использовать nosql для сообщений, какую? Может membercash? Как понял, сначала все хранится в Nosql или member, затем через некоторое время, кучей пишется в mysql и чистится, в общем тут мне нужна ликбез статья.
Если лучше будет написать все на php:
2) Стоит ли использовать чат со статьи
Создание чата на PHP? Здесь пишется свой комет сервер?
3) Лучше сторонний комет сервер или свой?
4) Писать все в mysql, или стоит использовать nosql для сообщений, какую? Может membercash? Как понял, сначала все хранится в Nosql или member, затем через некоторое время, кучей пишется в mysql и чистится, в общем тут мне нужна ликбез статья.
Заранее спасибо за ответы, и простите за такой большой вопрос, не хватает опыта, знаний, буду рад помощи.
Другие решения, найденные из ответов на тостере:
socketo.me/docs/flow
https://github.com/btford/angular-socket-io-seed
https://github.com/kryoz/sociochat