读写分离
优质
小牛编辑
133浏览
2023-12-01
从1.r.58开始, 内置读写分离支持
ioc js形式的配置
NutDaoRunner新增了slaveDataSource属性
dataSource : {
// master数据源
},
slaveDataSource : {
// slave数据源,负责读
},
dao : {
type : "org.nutz.dao.impl.NutDao",
args : [{refer:"dataSource"}], //引用主数据源
fields : {
runner : {refer: "daoRunner"}
}
},
daoRunner : {
type : "org.nutz.dao.impl.sql.run.NutDaoRunner",
fields : {
slaveDataSource : {refer:"slaveDataSource"} //引用slave数据源
}
}
读写分离的判据
- 不在事务内
- select语句
继承NutDaoRunner覆盖selectDataSource方法,可以实现多个从库或分库分表.