Ken Hibino
7af3981929
Refactor redis keys and store messages in protobuf
...
Changes:
- Task messages are stored under "asynq:{<qname>}:t:<task_id>" key in redis, value is a HASH type and message are stored under "msg" key in the hash. The hash also stores "deadline", "timeout".
- Redis LIST and ZSET stores task message IDs
- Task messages are serialized using protocol buffer
2021-06-29 16:34:21 -07:00
Ken Hibino
00a25ca570
Rename DeadTask to ArchivedTask and action "kill" to "archive"
2021-01-14 06:43:44 -08:00
Ken Hibino
aa2676bb57
Update Broker interface
2020-09-12 12:59:03 -07:00
Ken Hibino
a913e6d73f
Add healthchecker to check broker connection
2020-07-28 22:45:57 -07:00
Ken Hibino
199bf4d66a
Minor code cleanup
2020-07-06 05:48:31 -07:00
Ken Hibino
feee87adda
Add recoverer
2020-07-06 05:48:31 -07:00
Ken Hibino
4e8ac151ae
Update processor to adapt for deadlines set change
...
- Processor dequeues tasks only when it's available to process
- Processor retries a task when its context's Done channel is closed
2020-07-06 05:48:31 -07:00
Ken Hibino
9b05dea394
Update RDB.Dequeue to return message and deadline
2020-07-06 05:48:31 -07:00
Ken Hibino
7f30fa2bb6
Fix requeue logic in processor
2020-06-13 06:22:32 -07:00
Ken Hibino
06c4a1c7f8
Limit the number of tasks moved by CheckAndEnqueue to prevent a long
...
running script
2020-06-08 06:06:18 -07:00
Ken Hibino
a38f628f3b
Refactor server state management
2020-05-31 06:41:19 -07:00
Ken Hibino
7c7f8e5f30
Move Broker interface to base package
2020-04-19 08:51:17 -07:00
Ken Hibino
46ab4417dd
Add test to simulate situation where redis is down
2020-04-19 08:51:17 -07:00