我有一个奇怪的问题.
每当我停止Tomcat时,SSH变得非常缓慢,几乎完全没有响应. SSH接受任何命令需要一分钟甚至更长时间.当我终于让Tomcat重新开始时,一切都恢复正常.
每当我停止Tomcat时,SSH变得非常缓慢,几乎完全没有响应. SSH接受任何命令需要一分钟甚至更长时间.当我终于让Tomcat重新开始时,一切都恢复正常.
这发生在非常繁忙的服务器上.问题是我需要经常因为应用程序升级而停止Tomcat.升级通常需要几秒钟,但这需要将近10分钟,因此我们遇到了不必要的停机时间.
我看到的一件事是当我停止Tomcat top时,在100%CPU上显示了很多ksoftirqd / X进程.这可能是问题吗?
内核版本是:2.6.18-308.11.1.el5
Red Hat版本是:Red Hat Enterprise Linux Server 5.9版(Tikanga)
知道为什么会这样吗?
解决方法
慢ssh连接/ ssh滞后是高负载的症状.高负载通常是由io阻塞引起的,这通常是由交换引起的.
要检查您的负载,运行正常运行时间或顶部,当ssh没有响应时,您可能会看到超过10的负载数.在正常使用期间,它们可能会徘徊在2以下.
运行free或top来查看你的内存使用情况,你可能会看到很多交换.
一旦找到根症状,就可以搜索为什么“tomcat交换关闭”或“tomcat高负载”,这可能是因为它试图写一些存储在缓存中的东西或交换到磁盘.你的tomcat jvm max heap size是否大于你拥有的内存量?
也许连接到您的webapp的东西在创建DoS场景时会不断重试.
这可能都是您的webapp特有的,所以使用一般条款.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。