Я создаю веб-приложение, которое требует системы уведомлений в реальном времени . Как настроить мой сервер для извлечения данных из базы данных mySQL, а затем нажать его в браузере. У меня абсолютно нет идеи, как это сделать. Если кто-то может помочь, это было бы очень признательно! Спасибо огромное!
EDIT: Я, вероятно, должен быть более конкретным, я вытаскиваю данные, так как в XYZ недавно создана учетная запись, недавно XZY … Большое спасибо!
Вы не можете передавать данные в браузер, но то, что вы можете сделать, – это настроить свою веб-страницу для периодического опроса своего сервера каждые несколько секунд. Пример установки:
На вашем веб-сайте есть функция javascript, которая работает на таймере каждые несколько секунд (или любой другой интервал работает лучше всего для вашей ситуации).
Запустите этот таймер при загрузке страницы.
Эта функция javascript вызывает вызов AJAX веб-службе на вашем веб-сервере (подробнее об этом в секунду).
На стороне сервера вам понадобится какая-то система, которая отслеживает эти события и хранит их где-нибудь, например, в таблице базы данных с меткой времени. Так, например, когда XYZ создает учетную запись, которая будет записана в эту таблицу «событий» в db.
Затем веб-служба, вызываемая вызовом AJAX, запускает запрос в этой таблице и извлекает все записи с момента последнего вызова. Затем просто обновите веб-страницу с этими результатами.
Это, очевидно, не на 100% «живое», так как будет небольшая задержка в зависимости от того, какой временной интервал вы задали в таймере JS, но он довольно близок.
Вы можете создать услугу push-уведомления для вашего веб-сайта, использующую веб-порты и изящную деградацию, для долгого отклика опроса для браузеров, которые не поддерживают веб-сайты. Это требует значительного количества технических / программных знаний.
Некоторыми хорошими ресурсами для этого являются: http://socket.io (который использует бэкэнд node.js для веб-сокетов и деградации дескрипторов) http://pusherapp.com (коммерческое решение, если вы не хотите откатывать и поддерживать свой сервис)
Для списка браузеров, поддерживающих веб-сайты, вы можете выполнить поиск «caniuse» – который предоставляет большие подробности для функций, поддерживаемых версиями браузера
Примечание. Для многомиллионных пользовательских приложений, таких как Facebook, я бы предположил, что они взвесили преимущества работы веб-сайтов для более 50 миллионов одновременных пользователей и пришли к выводу, что сохранение данных, согласованных по всем узлам, связанным с миллионами сокетов, будет слишком большим. Я могу себе представить, что это будет логический кошмар, чтобы сделать это в системе сокетов вместо базовой инфраструктуры sql-типа. Я не могу говорить от их имени, хотя это просто мое предположение. Тем не менее, вы будете удивлены, сколько сайтов в последнее время используют системы push и опроса 🙂