zlacker

[parent] [thread] 1 comments
1. aparso+(OP)[view] [source] 2021-06-12 13:52:35
In my experience, great abstractions without a good data migration blueprint is as about as useful as no abstraction at all.

In this example - great, you have a “queue” abstraction. When you switch to RabbitMQ or Postgres, how do you move your existing data without a quality of service or data loss? It can be difficult with production datastores even if the abstraction within your service is beautiful.

replies(1): >>lolind+o5
2. lolind+o5[view] [source] 2021-06-12 14:45:31
>>aparso+(OP)
Isn't migrating a queue super simple? Have a window in which you only add to the new system and you listen to both. When the old queue is empty, delete it.

If you need to keep track of old data, then yes, migration is hard. But queues don't save old data—that's the point of a queue.

[go to top]