Redis
 sql >> база данни >  >> NoSQL >> Redis

Как да поставите на пауза или да възобновите задачата за целина?

Грешен подход. Никога не трябва да поставяте на пауза или да отменяте процеса ръчно, за да получите текущото състояние. Състоянията на пауза и отмяна са по-скоро запазени за грешки на брокера.

Опитайте да преработите кода си.

Основната цел за постигане е в това изречение

customer can pause or resume process which are pending not the process one

Проектирайте кода си като https://en.wikipedia.org/wiki/Workflow_pattern

Разделете кода си на стъпки или състояния. Един процес на целина може да премине през целия работен процес, но не е необходимо, например, ако правите много заявки за много външни доставчици (една заявка =едно състояние). Ако клиентът е в състояние на пауза, спрете процеса на целина. Добавете събитие, което ще провери кога състоянието ще се промени на активно и стартирайте отново нов процес на celery към тази задача.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Redis Keyspace Известия с flushdb

  2. Ruby - Redis базиран мютекс с изпълнение на изтичане

  3. Сесията на NodeJS + ExpressJS + RedisStore е недефинирана

  4. redis HLL твърде много фалшиви положителни резултати

  5. Прозорецът на стека не показва изход при отстраняване на грешки в Redis Lua скриптове със ZeroBrane