V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
shoushi
V2EX  ›  Java

springboot 多服务的数据库连接池管理问题 [虚心请教]

  •  
  •   shoushi · 2019-09-27 09:24:04 +08:00 · 3362 次点击
    这是一个创建于 1675 天前的主题,其中的信息可能已经有所发展或是发生改变。

    每个 springboot 构建的服务都有默认的数据库最小连接数,当服务很多并且拥有很多副本的情况下,连接数会暴涨,导致之后的服务无法连接数据库,想请问下有什么好的解决办法吗?

    6 条回复    2019-09-27 10:32:04 +08:00
    arrow8899
        1
    arrow8899  
       2019-09-27 09:32:33 +08:00
    中间件啊,一般是搭一个 mysql proxy,负责处理权限、SQL 过滤、负载均衡、连接管理、日志、监控等,各大厂都有开源的,你搜一下
    LeeSeoung
        3
    LeeSeoung  
       2019-09-27 09:39:24 +08:00
    那你是不是允许你每个服务开那么多连接数嘛,就算有中间件 最后连接还是落到数据库上,数据库能承受多少连接数,你要启多少个服务实例。。手动算分配下?配置可以优化啊 最小连接数 空闲连接回收 允许存活连接啥的
    Aresxue
        4
    Aresxue  
       2019-09-27 09:39:54 +08:00
    最简单的就是修改 mysql 的 max_connections, 但可能让你的服务器不堪重负
    shoushi
        5
    shoushi  
    OP
       2019-09-27 09:46:24 +08:00
    就一开始 他的默认连接数就是 10 我又有两个数据源,导致每个实例都会占用 20 个连接数,实例一多就会导致连接数爆炸,想找找有没有共同管理该连接池的办法。
    qiyuey
        6
    qiyuey  
       2019-09-27 10:32:04 +08:00
    数据库本身就是最宝贵的资源,服务之间应当隔离
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3431 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 11:01 · PVG 19:01 · LAX 04:01 · JFK 07:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.