(no title)
Skinney | 9 months ago
Previously this would be problematic, as the new instance might miss changes made by the old server. Is this fixed by these new changes?
Skinney | 9 months ago
Previously this would be problematic, as the new instance might miss changes made by the old server. Is this fixed by these new changes?
gwking|9 months ago
When I deploy a new version of my python/sqlite web app, I do not replace the whole machine. I just upgrade the python package and restart the systemd service.
If I wanted to reduce downtime I could probably figure out a transition using SO_REUSEPORT. During the transition the old and new processes would be using the db concurrently, so the app would have to respect that case. If part of the upgrade requires a db schema change then I’m not sure how you could avoid some downtime. But I don’t know if it is possible with traditional dbs either.
maxmcd|9 months ago
Your new service will come up, but it won't be able to get the write lease until the previous server shuts down. Now you have tools to detect this, stop one writer, and start the other, but the service will likely have to experience some kind of requests queueing or downtime.