2
回答
不同地域的镜像数据库怎么做?
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

首先说说情景吧:

我们是做一个展会的信息化提供的,那么我们在阿里云上会有一台服务器,然后每个会展中心都有一台服务器。那么在开展期间由于对外的带宽基本是严重不足的,而且这个时间段我们的应用会被频繁使用。

现在我的设想是因为每个会展中心都有一台服务器,那么我可以内容分发把阿里云上的内容分发到会展中心的服务器,这样就可以通过内网访问解决了读取信息带宽资源不足的问题。但我们的应用不单单是读,还有写。如果直接写到阿里云的服务器肯定是不行的,因为那时候出口带宽已经严重不足了。所以我们希望尽量利用会展中心的服务器。

现在是问题:


  1. 我们数据库设计时有自增ID存在。
  2. 并不是只有一个会展中心,会有多个会展中心。
  3. 需要确保阿里云上服务器的信息是实时的,会展中心之间的信息可以有延迟。

其实现在主要是数据库的问题,现在希望的是 所有在会展中心这个内网写的信息都先写到会展中心的服务器,然后再从这台服务器写到阿里云,阿里云再分发到各个会展中心?

用主主的分布式方式吗?但自增ID如何处理?如果成百的会展中心这个自增ID规则将会十分复杂?如果可以有什么算法吗?


举报
胡晋
发帖于4年前 2回/168阅
共有2个答案 最后回答: 4年前

主主的玩法没见过。。

楼主的问题其实也是读多写少的场景,可以考虑用读写分离的方式。

在一个地方写,然后数据通过日志的方式同步到其他的节点上。或者MySQL的其他解决方案。。

所有写的请求到主节点就好了。。

--- 共有 1 条评论 ---
胡晋这个办法明显我考虑过的,因为访问高峰期上传带宽几乎耗尽了。所以要先把数据写到本地的服务器,再等空闲时上传到主干上面去! 4年前 回复

这个问题我也遇到过,也在寻找解决方案。我当时使用的方法是在每个写入节点上的相应数据表中建立触发器,当数据写入、修改、删除时,调用相应的程序,程序再根据实际情况,将数据推送到其它机器上去。

这个插件可使用某高人做的mysql-udf-http

--- 共有 2 条评论 ---
月影又无痕一直用着呢,只是已经离开前一个公司了。 4年前 回复
胡晋为什么后来没有使用了? 4年前 回复
顶部