我正在开发一个带有Postgres数据库的mill
django动力网站.我在本地开发并拥有3台VPS服务器,用于测试,分期和生产.每个VPS都运行自己的
Linux / Apache /
Python / Postgres堆栈,并拥有自己的数据库.
我开始发现,使用git进行持续部署时,登台实际上已经变得多余(从登台转向生产需要交换IP地址,这需要重新启动VPS).
我唯一可以预见升级是有用的是当复杂的数据库迁移需要发生时,即使这样,因为没有镜像登台和生产的Postgres数据库,也可能会丢失在迁移之间输入的数据丢失.
我的问题是,我应该在分期和制作之间反映Postgres吗? (如果是这样,怎么样?)我做得对吗?我无法在任何地方找到关于Web应用程序部署最佳实践的文档.
解决方法
如果你认为你不得不多次进行复杂的数据库迁移,我会说你应该在暂存和生产之间镜像Postgres.手动执行迁移可能非常容易出错,因此您几乎肯定会收回设置迁移的时间投入.
我不是Postgres专家,但这里是overview of replication options.