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
This commit is contained in:
Ken Hibino
2021-03-12 16:23:08 -08:00
parent aaa3f1d4fd
commit e425cf0fb1
22 changed files with 2553 additions and 606 deletions

5
.gitignore vendored
View File

@@ -18,4 +18,7 @@
/tools/asynq/asynq
# Ignore asynq config file
.asynq.*
.asynq.*
# Ignore editor config files
.vscode