gentics / mesh-incubator

Project which is home for planned enhancements for Gentics Mesh
3 stars 0 forks source link

Enhance Live Upgrade Support #141

Open Jotschi opened 6 years ago

Jotschi commented 6 years ago

We currently support limited live upgrade support. Live upgrades are only possible if the database revision does not change.

Upgrades which include database changes can not be handled live. We should provide ways to mitigate this limitation.

Mitigation Strategies

Cache writes

Write requests could be cached within a RabbitMQ and replayed once the upgrade process has been completed. Read requests would need to take the cached writes into account.

Read Only mode

Gentics Mesh could be put in a read-only mode which would reject each write and also notify the application that writes are currently not supported due to a maintenance task.

npomaroli commented 6 years ago

I see some problems with cached writes:

I think the Read Only mode is the simpler and cleaner option