前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Resin线程使用问题

Resin线程使用问题

作者头像
星哥玩云
发布2022-06-30 18:19:35
5010
发布2022-06-30 18:19:35
举报
文章被收录于专栏:开源部署

【现象】:应用响应慢,被监控脚本重启;应用负载低、访问压力小。

【原因分析】:

1、使用netstat -na|wc -l查看连接数,连接数正常

2、使用kill -3 PID,查看生成的jvm_xxx.log,看java正在做什么,看是否正常

如:

化妆品库,在应用被监控脚本重启前生成的jvm LOG中有如下信息

统计发现,有230多个线程都在运行此任务;

Resin只配置了256个线程,这个请求占用的线程过多,Resin没办法去处理别的请求,引起请求超时。

3、这些请求是什么,为什么会这么多呢,从业务上查看了解到,这个请求是化妆品库这个应用去请求快搜的一个接口(使用httpclient方式),把拿回来的数据进行格式化后在前台显示。

4、Httpclient方式,每个请求都需要占用一个线程,当一个请求完成后线程才会被重用,当被调用的系统响应较慢时,会导致调用它的应用本身的线程占用过多,没资源提供其它服务。

【解决方案】:

调整应用使用httpclient方式调用其它资源的方法,改为别的方式或增加缓存减少调用次数。

Resin是CAUCHO公司的产品,是一个非常流行的支持servlets 和jsp的引擎,速度非常快。Resin本身包含了一个支持HTTP/1.1的WEB服务器。虽然它可以显示动态内容,但是它显示静态内容的能力也非常强,速度直逼APACHE SERVER。许多站点都是使用该WEB服务器构建的。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档