我有个计划,
我有两个DB服务器运行在两台不同的机器上。
我必须构建一个自动化的过程,在第一次插入时,数据将从一个DB复制到另一个DB服务器。
我的应用程序使用spring和mysql。
我可以选择DB侧或spring-hibernate侧方法。
用rabbitMQ可以做到这一点吗?
我可以选择在每次插入或批处理过程中调用自动过程,或者使用以下链接中提到的答案的queue.Some,但我不清楚
任何帮助都将不胜感激。
发布于 2016-04-05 14:23:47
不要试图让事情变得比实际情况更困难。复制机制内置的mySQL将是最好的。google有大量的教程,例如:
https://fromdual.com/how_至_设置_mysql_主从_复制
基本上,你需要主从配置。
发布于 2016-04-28 08:56:34
以下是我对此的看法,
如果您不想将部署方面与您的应用程序相结合,那么这是最好的。系统管理员将从您那里处理这些负担。他们将设置主从安装程序,而您的应用程序将无缝地访问db。
通过这种方式,您可以使用拦截器并将所有查询发送到复制机器。但是这也会降低应用程序的性能,所以在进入这个过程之前,您必须做很多事情,而且如果在复制过程中出错,那么您的应用程序事务也会受到影响。因此,在设计时需要更多的注意。
您可以设计一些外部工作人员管理器类型的异步任务,并将复制作业分派给这些工作人员。为了更好的性能、可维护性和控制,您还必须维护某些批处理。因此,您可以将修改后的实体维护到单独的队列中(可能是redis / rappitMQ ),您的外部作业将负责复制过程。因此,您的应用程序将从负担中解脱。
发布于 2016-04-05 14:28:07
是啊。建立一个主从是最简单的方法来做到这一点。如果您需要对两者进行更新或插入功能,这可能会有点棘手。在任何情况下,如果您确实成为主从,请注意,在复制过程中,主数据库将被锁定。
https://dba.stackexchange.com/questions/134709
复制相似问题