4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
1 | |
Как сделать чат на php28.07.2018, 00:02. Показов 3345. Ответов 5
Метки нет (Все метки)
По мотивам возникающих в последнее время тем по поводу чатов:
Получение $_SESSION в сокетах ReactPhp чат, не работает Как реализовать моментальное уведомление о новом сообщение Чат на сокетах Захотелось запилить некоторый пример, демонстрирующий как используя php на бэкеде мгновенно оповещать клиента о новых сообщениях, а заодно изучить новые технологии. Есть следующие способы реализации данной идеи:
Технологии: В качестве веб-сервера выбирал между ReactPHP и Swoole. ReactPHP недавно зарелизил стабильную версию, имеет неплохую документацию, в отличае то Swoole, большая часть материалов по которому на китайском. Но трудности закаляют, поэтому выбрал Swoole. К тому же Swoole реализован как расширение на языке C и потому потенциально быстрее Фреймворк zend expressive, т.к. давно хотел его изучить. К тому же для него есть готовый модуль для Swoole, который правда пришлось немного подпилить под мои нужды. Возможно фреймворк для этой задачи оказался лишним, но изначально я планировал больше функциональности, большую часть которой решил пока не делать. Клиент - SPA на Vue.js. В качестве альтернативы EventSource - EventSourcePolyfill. Оказалось что EventSource не умеет посылать кастомные заголовки, а для авторизации я использовал заголовок Authorization . Клиент пока еще очень сырой, полностью отсутствуют стили.Сервер Клиент
3
|
28.07.2018, 00:02 | |
Ответы с готовыми решениями:
5
Реально ли сделать такой чат на php? Я хочу сделать программу - чат. Что б обмениваться сообщениями. Как такое сделать? Какой код? Как создать чат на php? Как создать Чат в PHP Devel Studio? |
21 / 44 / 11
Регистрация: 08.02.2018
Сообщений: 443
|
|
28.07.2018, 08:52 | 2 |
Скажите пожалуйста, что лучше использовать тогда между обменом пользователя и сервера моментально сокеты либо же технология ajax????
В чем их разница если они оба выполняют практически одну и ту жу действии
0
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
28.07.2018, 09:15 [ТС] | 3 |
Но выполняют все же по-разному. Если просто слушать события с сервера тогда SSE, если нужно еще и сервер оповещать то Web-socket. Т.е для онлайн игры однозначно Web-socket, для чата хоть и есть запросы к серверу, но не такие частые, поэтому оба можно пробовать. Еще если поэксперементировать с http2 и научить использовать 1 tcp соединение. Или если есть долгий процесс выполняемый на сервере, промежуточные результаты которого нужно показывать на клиенте то SSE. Если единичное получение данных с сервера, то простой аякс
2
|
21 / 44 / 11
Регистрация: 08.02.2018
Сообщений: 443
|
|
28.07.2018, 10:22 | 4 |
Jewbacabra, К сожалению я еще далек от этих протоколов, но образно я понял что к чему, спасибо вам.
0
|
0 / 0 / 0
Регистрация: 15.11.2018
Сообщений: 1
|
|
16.11.2018, 11:07 | 6 |
Это круто конечно, но легче было бы воспользоваться Telegram или скачать готовый репозиторий на GitHub.
0
|
16.11.2018, 11:07 | |
16.11.2018, 11:07 | |
Помогаю со студенческими работами здесь
6
Как сделать чат на C#? Как сделать чат? Как сделать чат? Как сделать чат на Java? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |