双活环境应用负载分布该如何考虑?

跨中心的访问必然会受到距离的影响,那么在考虑双活中心的时候,应用的负载状况是需要考虑的很重要的一点。那么针对不同的双活技术,该如何选择?

参与20

4同行回答

arrnoxarrnox系统架构师交通银行总行软件开发中心
为了不影响重要交易的性能,对应用负载和路由肯定是要严谨的考虑的。直接说个例子,假设数据库用的是db2集群,距离主要造成以下影响:1、db2节点与两个中心cf的通讯时间增加了,造成sql语录require lock时间增加了,commit时将page写入cf中的gbp的时间也增加了;2、双中心磁盘同步造成...显示全部

为了不影响重要交易的性能,对应用负载和路由肯定是要严谨的考虑的。

直接说个例子,假设数据库用的是db2集群,距离主要造成以下影响:1、db2节点与两个中心cf的通讯时间增加了,造成sql语录require lock时间增加了,commit时将page写入cf中的gbp的时间也增加了;2、双中心磁盘同步造成db2写active log的时间增加了。

目前主机上的解决方法是在a中心部署2个同步的cf,在b中心部署一个闲置的cf,a中心的交易只访问a中心的数据库节点,这样a中心的交易就只受第二点影响从而性能不会太差,然后把重要的交易路由至a中心,b中心只负责处理一些对性能要求不高的查询交易。

收起
银行 · 2016-01-08
浏览2719
anikikonganikikong课题专家组数据库运维工程师中国民生银行
交行的方式是一个折衷的办法,牺牲了一点高可用,换取了整体的性能。整体思路是对的,就是尽量减少跨中心的访问。无论是应用到数据库的连接,还是数据库内部的协同机制。所以在考虑双活中心的应用负载分布时,就要充分考虑双活的技术特点。一, 外围系统对该应用服务器的调用,尽量避...显示全部

交行的方式是一个折衷的办法,牺牲了一点高可用,换取了整体的性能。整体思路是对的,就是尽量减少跨中心的访问。无论是应用到数据库的连接,还是数据库内部的协同机制。所以在考虑双活中心的应用负载分布时,就要充分考虑双活的技术特点。

一, 外围系统对该应用服务器的调用,尽量避免跨中心调用。

二, 应用服务器访问数据库服务器,配置本地访问,只有本地访问都不通的情况下才会尝试跨中心访问。

三, 工作负载。由于双活环境的特点,例如DB2的GDPC集群,CF组件分主次,主CF工作的内容比较多,所以和主CF同中心的数据库节点处理性能更好。那么可以考虑将更多的负载放在主CF所在的中心。

四, 批处理。批处理建议也是放在主CF所在的中心来提高性能。

五, 读写分离。如果应用能做到读写分离,那就最理想了。

收起
银行 · 2016-01-08
浏览2481

提问者

anikikong
数据库运维工程师中国民生银行
擅长领域: 数据库灾备双活

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2016-01-08
  • 关注会员:5 人
  • 问题浏览:8140
  • 最近回答:2016-01-08
  • X社区推广