MongoDb java服务连接池配置 记录

  1. properties  yml 文件配置方式

    针对配置单独一个个设置 host ip name password 等 可以自由设置连接池配置 但是貌似不方便设置副本集配置

    目前有uri 链接 直连 可以在路径中设置 对应db 以及 副本集相关读写偏好 示例:

    spring.data.mongodb.uri=mongodb://数据库名字:数据库密码@ip:27017/对应db?readPreference=secondaryPreferred
    
    此方式有个缺点,不支持自由配置连接池配置,全部是默认配置,对生产环境不太友好
    
    
  2. 因为线上环境出现过,某个时段接口返回特别慢,响应时长有80s这种,app用户都已经提示超时。

    根据问题,初步判定问题出在数据库。

    后续跟踪查询时间段内 会存在慢sql,针对慢sql在数据库表中添加了对应得索引。

    但是因为那个时间点所有请求都处于一个缓慢状态,如果只是索引的问题话,不应该是所有的接口都缓慢。

    结合在云平台查到的执行sql读写请求输、延时数、连接数等数据,判断是因为大批量读写请求,导致连接池被占满,导致sql操作进入阻塞队列,持续等待执行,所以出现了大面积接口请求响应时间过长。

    由于生产是使用 uri 配置实现的。 不支持连接池配置。所以找了个mongodb-plus 增强,来实现自定义池配置。

    gitee地址:
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值