Один поток PHP для ответа на два асинхронных запроса AJAX

Я реализую процесс синхронизации между двумя устройствами. Интернет и мобильный. Я запланировал алгоритм, но не уверен в возможности его реализации. Мой алгоритм

  1. Mobile сгенерирует ajax-запрос к PHP-скрипту для синхронизации своих данных с базой данных.
  2. PHP-скрипты запускают транзакцию, а затем вставляют данные в базу данных, которую отправило мобильное устройство, и собирают данные, которые необходимо отправить на мобильное устройство и отправить повторно, но не зафиксировать.
  3. Mobile получает ответ, запускает транзакцию и отправляет другой ajax-запрос в качестве подтверждения скрипту php и фиксирует его на мобильной стороне.
  4. PHP-скрипт получает подтверждение ajax-запроса и фиксирует его данные, которые я разработал в setp 2.

У меня вопрос, можно ли использовать один поток PHP для работы с двумя синхронными запросами AJAX?

0

Решение

Я оставлю концепции php экспертам.

У нас был похожий сценарий, когда мы отправляли данные на сервер и вставляли их со значением флага (например, не полностью), а затем мы возвращались к устройству, сообщая, что были вставлены строки xyz. Он также будет содержать уникальный идентификатор для каждого устройства, чтобы мы могли отслеживать, какое устройство отправило какие данные, мы также будем хранить сведения об уникальном идентификаторе для каждого устройства, уникальный идентификатор транзакции (uuid) и метку времени в отдельной таблице (транзакция_статуса). Подтверждение будет обновляться на клиентах, это в основном удалит транзакции из очереди синхронизации, поддерживаемой на клиенте.

Когда следующий набор записей с того же клиента достигнет сервера, сервер запросит соответствующие записи в таблице транзакции. если записи уже доступны, это означает, что подтверждение не достигло клиента, и в этом случае сервер ответит необходимыми данными.

Если следующий набор записей не содержал записи, которые были отправлены во время предыдущей синхронизации, то те, которые считаются успешной синхронизацией, и флаг неполного будут обновлены.

Я понимаю, что это может быть расплывчато, но я попытаюсь создать диаграмму в свободное время, чтобы четко описать этот сценарий.

Пожалуйста, оставьте комментарий, если вам нужно больше разъяснений.

Любой, у кого есть лучший подход, пожалуйста, не стесняйтесь поделиться.

2

Другие решения

Я, наконец, в конечном итоге с помощью WebSockets. И для реализации веб-сокетов в PHP я использовал трещотка. Я смог получить то, что я пытался реализовать.

0

По вопросам рекламы [email protected]