У меня есть веб-приложение, которому нужно часто обновлять некоторые значения, потому что изменения должны быть доступны почти в реальном времени. Чтобы сделать это, я запускаю через ajax процедуру refresh.php каждые 15 секунд, которая возвращает обновленную информацию. Время, которое увеличивается, если нет активности пользователя.
Я подумал о возможности создания сервис-работника в браузере (поскольку я уже использую его и для pwa), и в нем создаю веб-сокет, и только тогда, когда на сервере происходит обновление, создаем сокет для IP-адреса пользователей, которые вошли в систему (и сохранены в БД), просто чтобы отправить браузеру пользователя сообщение об обновлении, а затем веб-сокет запускает процедуру javascript, которая подключается к серверу и выполняет обновление.
Я не знаю, будет ли возможно создать сокет только для того, чтобы сообщить о наличии обновления, потому что в этом случае я не хочу оставлять сокет открытым, создавая соединение только при обновлении информации, что должно случиться с несколькими пользователями.
Кто-нибудь когда-нибудь нуждался или делал что-то подобное, или у вас есть другие идеи?
Задача ещё не решена.
Других решений пока нет …