一次几乎不可能的数据库迁移( 三 )


迁移而迁徙本身却没什么特别值得注意的 , 这其实件好事 。我们这两个系统并行运行了一段时间 , 并在某个时间点停止了旧系统的使用 。最令人兴奋的是 , 当我们关闭 JSON 写入时 , 提交延迟降低了很多 。在管理面板中编辑网络时这一点尤为明显 。我们有漂亮的 Grafana 图表 , 在切换之前我们就调整了 Prometheus 配置以保持更多的历史纪录 。不论在哪种情况下 , 写操作都能从几乎一秒(有时更糟!)的时间缩短到毫秒级 。刚开始的时候 , 写入并不是我们的第二目标 。永远不要低估“临时”起意会产生多么长久的影响!
未来在这项工作中 , 除了确保 Tailscale 控制面板可以在可预见的未来扩展外 , 最令人兴奋的事情是我们发布过程的改进 。我们可以轻松地将多个控制面板实例附加到一个一致的数据库中 , 这意味着我们可以切换为蓝绿部署(
https://en.wikipedia.org/wiki/Blue-green_deployment) 。这将让 Tailscale 的工程师们有信心去尝试部署特性 , 因为变更所能造成的最差结果是有限的 。我们的目标是将开发速度保持在接近 JSONMutexDB 早期的水平 , 当时我们可以在不到一秒的时间内重新编译并在本地运行 , 每天部署上 10 几次 。





推荐阅读