Обновление: у меня создается впечатление, что это даже не тот сайт, на котором можно публиковать это.Если кто-то может указать мне правильное направление, я был бы признателен ...
У меня есть существующее приложение PHP + MySQL, которое не было создано для отображения данных в реальном времени или аналогичных данных в реальном времени.,Но теперь мне нужно сделать так, чтобы данные практически в реальном времени передавались в приложение и обновлялись.Эти оперативные данные предназначены только для 1 страницы приложения.
Посмотрел на такие вещи, как socket.io и библиотеки websockets на основе PHP, но это выглядело как излишнее, потому что данные в основном поступают из 1 источника и доставляются в1 человек (клиент).Несколько других пользователей могут запустить этот процесс, но каждый из них будет иметь свою конечную точку данных.Это ... как год в будущем.Но хорошо подумать.В идеале в системе должны быть сотни или тысячи пользователей, извлекающих свои данные в реальном времени.Поэтому я хочу, чтобы это было максимально упрощено и оказало минимальное влияние.
Пользователи должны пройти проверку подлинности и авторизоваться для использования данных.Это уже встроено в текущую систему.
API для получения данных (который уже был создан другим поставщиком) также НЕ является потоковым.Он установлен на 20-секундном кроне, поэтому новые данные доступны каждые 20 секунд, что удовлетворяет потребности клиента.
Мой текущий план - сделать что-то вроде этого ...
- Данные извлекаются из cron каждые 20 секунд, организуются и сохраняются в базе данных (завершено)
- Настроить # 1, чтобы он также выполнял любые дополнительные проприетарные вычисления для данных И компилирует + записывает файл JSON всервер (уникальный для пользователя), который является точными данными, необходимыми для внешнего интерфейса (данные БД необходимы для других страниц)
- Создание небольшого сервиса на основе PHP, который проверяет предоставляемый клиентом JWT и читает файл JSONout
- Запись внешнего интерфейса AJAX в конечную точку опроса из # 3 каждые X секунд с использованием JWT для авторизации
Все это выглядит так, как будто я заново изобретал колесо или что-то упустил,Тот факт, что это существующее приложение на основе PHP (LAMP), имеет некоторые ограничивающие факторы, но я чувствую, что должен быть более эффективный способ справиться с этим ... Это довольно ново для меня.Кроме того, я открыт для других технологий, которые будут работать в стеке LAMP, если это улучшит ситуацию.