读写分离

Jul 10, 2017 10:38:44 AM

概述

从1.r.58开始, 内置读写分离支持

ioc js形式的配置

NutDaoRunner新增了slaveDataSource属性

  1. dataSource : {
  2. // master数据源
  3. },
  4. slaveDataSource : {
  5. // slave数据源,负责读
  6. },
  7. dao : {
  8. type : "org.nutz.dao.impl.NutDao",
  9. args : [{refer:"dataSource"}], //引用主数据源
  10. fields : {
  11. runner : {refer: "daoRunner"}
  12. }
  13. },
  14. daoRunner : {
  15. type : "org.nutz.dao.impl.sql.run.NutDaoRunner",
  16. fields : {
  17. slaveDataSource : {refer:"slaveDataSource"} //引用slave数据源
  18. }
  19. }

读写分离的判据

  • 不在事务内
  • select语句
    继承NutDaoRunner覆盖selectDataSource方法,可以实现多个从库或分库分表.

本页面的文字允许在知识共享 署名-相同方式共享 3.0协议GNU自由文档许可证下修改和再使用。

原文: http://nutzam.com/core/dao/slave.html