当前位置: 首页 > news >正文

php做网站登陆验证wordpress500

php做网站登陆验证,wordpress500,wordpress插件的安装目录,温州网站设计网站建设网站问题现象 最近在spring boot项目中引入了 spring-boot-starter-actuator 后,测试环境开始出现服务假死的现象, 且这个问题十分怪异,只在多个微服务中的简称A的这个服务中出现,其他服务都没有出现这个问题, 之所以说…

问题现象

最近在spring boot项目中引入了 spring-boot-starter-actuator 后,测试环境开始出现服务假死的现象,

且这个问题十分怪异,只在多个微服务中的简称A的这个服务中出现,其他服务都没有出现这个问题,

之所以说他是假死,是因为只是http请求无法访问进去了,但是该服务的定时任务却可以定时执行。

问题排查

通过查看jvm的线程信息发现,假死的A服务中,存在很多目前正在waiting状态的http nio线程,

进一步跟踪这些线程的堆栈信息,发现他们都在Alibaba Druid连接池的获取Connection方法中等待获取到最新的Connection,

第一反应是不是连接泄露了,存在慢sql、阻塞住的sql,或者手动获取connection但是没有归还的现象,

于是通过在定时任务代码中打印连接池的状态,发现也没有这种情况,而且连接池的最大连接数设置的也挺大的。

初步定位

通过观察该连接池的链接对象,发现是一个sql server数据库,但是我们的项目配置连接的其实是mysql,

在代码中搜索发现了有一个手动创建连接池的地方,而这里是为了与一个客户的sql server数据库做同步使用的,但是在给其他的客户部署时,并不需要这个操作,代码如下:

在这里插入图片描述
这里的操作有一个最大的问题,就是当不设置Druid连接池的等待连接时间时,该时间是-1,即默认永远等待,永不超时

最终定位

有了上面的代码,则需要确认为什么获取不到connection?造成永远等待?

这很正常,因为其他的客户环境并没有sql server,完全无法连接上啊,这时候Druid连接池中的可用connection压根没有,

然后spring boot admin,又不停的通过http轮询检查服务健康状态,最终它的每次http请求都会陷入阻塞等待connection,加之http又没有设置连接超时时间,

最终健康检查http连接占满了服务的http连接,导致其他的请求无法进入。

解决与避免

这里存在几个问题

  1. 该代码应当在指定客户环境运行,其余客户不应当创建该连接池
  2. 连接池配置应当通过yml文件配置,这样可以尽快的发现系统中存在的相关io组件,并发现其配置的不正确性,spring boot支持多数据源配置。
http://www.yayakq.cn/news/369135/

相关文章:

  • 百度网站开发商城推广方案
  • 制作一个在线收费网站网站备案失效
  • 如何做软件类型的网站公明网站制作
  • 建设积分网站网站建设推广优化岗位说明书
  • 网站开发系统学习网站建设策划表
  • 网站自己做公司简介模板免费ppt下载
  • 济南怎么做网站中国建筑管网
  • 建设银行网站查询沈阳网站制作定制策划
  • 决定网站打开的速度吗wordpress+浮框
  • 大连华南网站制作公司棋牌游戏开发出售
  • 作文网站哪个平台好鹤城建设集团网站
  • 网站如何设计方案那里网站建设好
  • 建设营销型网站流程做二手网站有哪些问题
  • 专业的高端网站设计公司有没有专门做数据分析的网站
  • 领先的响应式网站建设平台网站简易后台
  • 山东网站营销seo哪家好html实例百度网页制作代码
  • 学网站建设需要用哪几个软件做优化送网站
  • 自学网站建设wordpress首页非常慢
  • 设计网站推广方案WordPress站点添加ssl证书
  • 企业网站建立哪58招聘求职找工作
  • 做网站的准备什么软件企业网站建设套餐价格
  • 手机网站建设系统合肥小程序开发设计
  • 企业建设门户网站有哪些三亚网站运营托管介绍
  • 网址交易网站qq企业邮箱注册申请
  • 上海 企业 网站建设ppt精美模板
  • 360浏览器直接进入网站公司网站免费网站免费
  • 做网站的首页下拉列表wordpress 获取用户昵称
  • 装修网站怎么建设南京建站推广公司
  • 网站制作的步骤不包括专业建设规划方案模板
  • 佛山做网站-准度科技公司做任务 网站