多数据库 主从同步问题

zy5651768 2018-11-22 02:26:04
目前的需求是
底下有500个局域网web服务器 在跑项目,各自连接自己的内网数据库。代码和数据库结构都一样。子项目平均1-10秒有操作产生。
还要有个云服务器。可以实时控制,监控这500个子项目。子项目断网也能正常运行,重新联网后继续接受云的监控。 云服务器要保障数据一致性。可以看到所有记录。
我的有两个想法
1. 子项目和云项目用websocket通讯。子项目客户创建了一条数据。云数据库同步也创建一条数据。云端客户修改了一些记录 。子项目也同时修改对应的这些表数据。
2. 通过数据库同步工具 定时双向同步。 但是可能会出现问题,云数据库选择性同步到子项目如何解决。各自子项目同步到云数据库,各自自动生成的主键重复怎么办。

寻求一些解决方案 谢谢
...全文
517 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zy5651768 2018-11-22
  • 打赏
  • 举报
回复
反馈下。。局域网内的子项目可注册到外网的数据中心,但是服务消费者 访问不到子项目。估计是内网的缘故。那内网的数据库要会碰倒同样的问题,外网访问不到内网数据库。
zy5651768 2018-11-22
  • 打赏
  • 举报
回复
是 springcloud 子项目当client
zy5651768 2018-11-22
  • 打赏
  • 举报
回复
好的 谢谢 那主键就用guid自动生成解决了。还有个问题 怎么部分同步。我打算用springboot 云端操作子项目直接操作子项目service。子项目修改自己对应的表。子项目数据库定时单向同步到云数据库。先这么做,过几天反馈下可行性。
吉普赛的歌 2018-11-22
  • 打赏
  • 举报
回复
或者所有 id (长整型)均由应用服务器生成, 不关数据库的事, 但那就得应用服务器保证 id 的不重复性。不过, 这种 id 生成器网上一大把, 你自己随便找一个就是了, 没什么难度。
吉普赛的歌 2018-11-22
  • 打赏
  • 举报
回复
双向同步, 最简单的办法是 用 guid, uuid 之类的随机 id . 用 自增长, 那就得起始id 一个单数一个双数。
zy5651768 2018-11-22
  • 打赏
  • 举报
回复
子项目 用springcloud 是否能解决 注册中心放到云端

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧