Работая с DB2 и PHP, мои ADD и DROP занимают много времени (30 секунд на ADD и DROP). Мне любопытно, есть ли способ отправить мои ADD и DROP в базу данных, не ожидая ответа PHP?
Я вполне уверен, что большинство элементов управления php db не имеют асинхронных методов (слишком плохо). Предполагая, что вам просто нужно делать инструкции DB, которые не взаимодействуют с конечным пользователем, вы можете использовать pcntl_fork
. Если вам нужно что-то еще, такое решение может быть более полезным.
Простое решение – cron для планирования ваших задач
http://articles.sitepoint.com/article/introducing-cron
Запланируйте все скрипты sql, которые вы хотите запустить в заданное время.
Вы можете скопировать «автономный» php-скрипт и отключить его с помощью «системного» вызова.
Вы только проблема, как передать данные в сценарий. Я бы рекомендовал вам создать промежуточную таблицу «действия», в которой вы можете ввести нужные обновления и попросить пакетный скрипт прочитать действия и применить обновления.
Если у вас установлена DB2, вы также можете установить MQ. Если вы это сделаете, вы можете найти решение, в котором вы будете перенаправлять запросы на обновление в очередь MQ и активировать их с помощью запускаемой программы.