王哈哈今日不举铁 2021-06-29 17:01:49
java spring 配置多数据源 如何能够实现互不干扰,互不影像呢? 问题描述:在前台页面当单独使用某个数据源的进行crud,比如说查询大量数据时,打开另一个数据源模块会出现页面卡顿,知道当前的数据源调用结束才会进入. 请问这种情况如何解决? 路过的大佬请指点迷津,万分感谢!
...全文
411 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
老王就是我 2021-07-01
  • 打赏
  • 举报
回复

这是有两个请求 第一个请求(请求A)访问A数据源正在CRUD中,这时候又来一个新的请求(请求B)访问B数据源,这理解没错吧?请求A占用了一定量的CPU和内存,如果请求a和请求b都在同一个服务器内进行,由于a先占用了部分资源,B可调用的剩余资源将会减少,so,速度当然会慢。 所以,你是问接口响应慢还是数据库的性能降低?接口性能降低无法调整,数据库性能降低再具体分析,是高并发还是大表?

=PNZ=BeijingL 2021-06-29
  • 打赏
  • 举报
回复

你描述的情况有肯能是大量的IO操作影响服务器性能,所以第2个请求比较慢

如果库不一样,考虑把库放在两台服务器上,

如果库一样, 建议做读写分离,减少写对读的影响

  • 举报
回复
@=PNZ=BeijingL 首先感谢指点,我这边就是两个数据库,两个ip,我首先通过spring实现多数据源切换,我这边现象是:我通过前台页面,访问这个业务,也就是访问第一个功能块,做数据查询;然后期间呢,由于数据量大,我此时没有等待,然后去打开了第二个功能块,然后呢发现第二个功能块页面渲染很慢.造成的原因就是第一个功能模块数据源还没结束,所以造成第二个功能模块受影响了.我现在此时就是不知道该如何解决这个问题现象,请大神详细指点一下,非常感谢.
li905663280 2021-06-30
  • 举报
回复
@王哈哈今日不举铁 第二个功能块是同一应用服务,还是不同的呢。
  • 举报
回复
@li905663280 同一个业务的不同功能模块.
3条回复

51,411

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧