За последние 24 часа нас посетил 22001 программист и 1005 роботов. Сейчас ищут 712 программистов ...

Постоянное соединение с сервером

Тема в разделе "PHP для новичков", создана пользователем rugleb, 15 окт 2017.

Метки:
  1. rugleb

    rugleb Новичок

    С нами с:
    27 ноя 2016
    Сообщения:
    25
    Симпатии:
    0
    Доброго времени суток!
    Каким образом мобильный клиенты (iOS, android), такие как мессенджеры, мгновенно получают сообщения, пришедшие от сервера? Получается, что они постоянно держат соединение с сервером, чтобы мгновенно получать данные от другого клиента (как в чате)?
    За счёт чего это держится? Явно не средствами обычного http.

    Второй вопрос: как реализовать такого рода сервер (интересует php), чтобы его можно было использовать для:
    1. Мобильных клиентов, в которых будет чат и потребуется постоянное соединение.
    2. Сайта. Структура типичная: MVC, но так же будет чат и обычные страницы.

    Из известного мне подходят только сокеты, но они реализуются в приложениях структуры "демон", то есть запустил скрипт и все - крутится цикл до 2-ого пришествия. Но в таком случае, как на этом же сервере устроить и обычный сайт (+API) с одной точкой входа и проч?

    На текущий момент есть обычный php сервер, на нем держится сайт и с ним взаимодействуют мобильные приложения через API, нужно для веба и для мобильных клиентов написать чаты, но не пойму как сделать правильно и эффективно.
    Заранее спасибо.
     
  2. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    сделаю допущение.. может как вебухуки у телеграмма? устройство ждет когда ему что то пришлют.. а куда слать - сервис определяет когда приложение аутентификацию проходит на сервисе..
     
  3. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.553
    Симпатии:
    1.754
    Одно другому не мешает. Демон висит, ждёт сигналов. А сайт работает. Демона можно на другой порт повесить, к примеру. Или на поддомен. Можно даже демона написать на другом языке. Можно использовать какую-нибудь Centrifuge. Вообще много чего можно сделать
     
  4. rugleb

    rugleb Новичок

    С нами с:
    27 ноя 2016
    Сообщения:
    25
    Симпатии:
    0
    Но в любом случае его придётся отдельно запускать?
    И такой вопрос: для поставленных задач оптимально подойдут websocket'ы?
    --- Добавлено ---
    Нет, вопрос все же не об этом.
    Интересует принцип удержания постоянного соединения и реализация совместно мобильных приложений и сайта.
     
  5. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.553
    Симпатии:
    1.754
    Ну под мобильные я не писал, не знаю, есть ли там инструменты для работы с веб-сокетами, хотя должны быть, по идее, а под веб - да, идеально
     
  6. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.822
    Симпатии:
    736
    Адрес:
    Татарстан
    Норм на вебсокетах. Сразу пишешь и для приложения и для чатов на сайте е например
     
  7. rugleb

    rugleb Новичок

    С нами с:
    27 ноя 2016
    Сообщения:
    25
    Симпатии:
    0
    Спасибо ребят, реализовал на вебсокетах - все отлично, пока)
     
  8. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    расскажите как))
    мне тут предстоит поработать с сокетами) а я с ними еще не сталкивался)) когда то ковырял давным давно ради интереса)) но давно было))