0

Я сейчас разрабатываю мобильное приложение с использованием ионного фреймворка и использует larvel 4 REST API для выполнения операций CRUD с базой данных MySql. Основываясь на требовании к приложению, мобильному приложению необходимо каждый раз обращаться к серверному сервису, чтобы завершить определенный процесс. Я использую Angular Resource для вызова этих API, и я вызываю их каждые 3 секунды, используя функцию Jintercript setinterval. Тем не менее, приложение работает, я действительно не считаю, что это хорошая практика, потому что это тяжелая задача для сервера и клиента. Не могли бы вы, ребята, направить меня, как я должен решить такую ​​ситуацию, и я очень ценю вашу помощь. Особенно, какие инструменты мне нужно настроить и каковы они? Спасибо.Справочная служба реального времени

+0

Я думаю, что это могло бы помочь http://stackoverflow.com/questions/29868003/refresh-events-in-angular-calendar-ui-fullcalendar-with-laravel-as-a-backend/29868502#29868502 –

+1

лучше не использовать 'setInterval' в любом случае. Он не учитывает временную задержку для запросов. Лучше позвонить в setTimeout с успехом и обратные вызовы – charlietfl

ответ

0

setInterval не является лучшей практикой получения новых данных с вашего сервера API/БД, поскольку сервер может быть затоплен, когда слишком много пользователей обращаются к вашему веб-сайту. Однако есть более красивое решение: WebSockets. С веб-сайтами вы получаете уведомления в реальном времени. Я не разработчик PHP, поэтому я не знаю, какие библиотеки WebSocket используются для разработки Laravel/PHP. Но на AngularJS части я могу рекомендовать: https://github.com/gdi2290/angular-websocket

WebSocket пример (не связанный): http://jsfiddle.net/EAVvQ/24/

Надеется, что это помогло.

Cheers!

+0

Спасибо Андрею, это действительно полезно для меня и ценит ваш ответ. Помимо среды Laravel/PHP, каковы другие? Вы используете некоторые из них? Я вполне могу изменить окружающую среду, если это не сложно. – Hein

+0

Laravel/PHP env в порядке. WebSockets - это многоплатформенная/технологическая библиотека. Неважно, какой язык вы используете. Попробуйте несколько библиотек PHP WebSockets и посмотрите, какой из них подходит. Под капотом WebSockets - это просто простой сервер, который отправляет уведомления, когда они происходят, и клиент (JS) прослушивает эти уведомления и выполняет некоторые действия на основе ответа. –

Смежные вопросы