spring mongodb副本集+事务配置

这里主要讲 spring里面如何对mongodb怎么配置,至于mongodb副本集怎么搭建,有时间的话我再写一下

1.准备好3台主机,分别配置好mongodb的副本集

1:192.168.1.107
2:192.168.1.108
3: 192.168.1.109

搭建完后,建议用rs.status()看一下状态,我这里用的是datagrip工具软件

 

2.这样在spring 的yml文件中就可以设置成

spring:
  data:
     mongodb:
       uri: mongodb://user04:123456@192.168.1.107:27017,192.168.1.108:27017,192.168.1.109:27017/mydata?authSource=admin&replicaSet=repl_0&w=majority&wtimeoutMS=5000&readConcernLevel=majority&readPreference=secondary&maxStalenessSeconds=120
     

这里 重点说一下

readPreference=secondary

主要是让程序实现读写分离,读优先去从节点上去读,提高效率

3.以上配置完好,还要配置mongodb的事务

注:mongodb单机版目前不支持事务喔,用的同学需注意

@Configuration
public class MongoConfig {
    
    MongoTransactionManager transactionManager(MongoDatabaseFactory dbFactory) {
        return new MongoTransactionManager(dbFactory);
    }
}

4.写一段程序验证即可

@Override
@Transactional(propagation = Propagation.REQUIRED)
public void save(Person person) {
    person.setUserid(sid.nextShort());
    person.setCreateTime(new Date());
    person.setUpdateTime(new Date());
    mongoTemplate.save(person);
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值