Моментальный ответ от Beanstalkd
Добавлено: 2018.04.16, 16:17
Настроил очереди заданий через Beanstalkd, всё работает прекрасно, но вот появилась проблема.
Захотелось поставить ожидание завершения задания (с таймаутом).
Отправляю задачу, жду выполнения, иду дальше.
Но чтобы "лишней" задержки при этом не было.
То есть, если я, например, буду опрашивать в цикле статус задачи, и поставлю задержку в секунду между итерациями, это уже неприемлемо снизит скорость обработки. Потому что на одну задачу "потеряется" секунда, а задач может быть сотни тысяч. Мне нужно, чтобы реакция происходила моментально.
Какие есть варианты это сделать?
Я искал в протоколе beanstalkd и ничего подходящего не нашёл. Это вообще реализуемо?
Захотелось поставить ожидание завершения задания (с таймаутом).
Отправляю задачу, жду выполнения, иду дальше.
Но чтобы "лишней" задержки при этом не было.
То есть, если я, например, буду опрашивать в цикле статус задачи, и поставлю задержку в секунду между итерациями, это уже неприемлемо снизит скорость обработки. Потому что на одну задачу "потеряется" секунда, а задач может быть сотни тысяч. Мне нужно, чтобы реакция происходила моментально.
Какие есть варианты это сделать?
Я искал в протоколе beanstalkd и ничего подходящего не нашёл. Это вообще реализуемо?