3

我一直在生产环境中使用 apache-tomcat-6.0.35。我们的应用程序使用小型实例托管在 Amazon EC2 上。我们面临的问题是 apache tomcat 正在使用 100% CPU。我们已经通过运行 htop 进行了验证,它显示了正在运行的多个 tomcat 线程。

Out 应用程序已在 Grails 2.0.1 中开发。

我们很困惑,为什么会这样?任何机构都可以提出任何解决方案吗?

谢谢

4

2 回答 2

7

可能的原因

这很可能是由于最近的闰秒及其对相当多的不了解/未准备好的 IT 系统的影响,包括 Linux、MySQL、Java 和确实 Tomcat 的部分 - 请参阅有关“闰秒”错误在 Web 上造成严重破坏的连线文章整个故事:

[...],说它遇到了使用 Java-happy Tomcat Web 服务器来服务其站点的跳跃错误问题。“<strong>我们运行 tomcat 的网络服务器的响应几乎为零(我们能够处理一些请求),”网站发言人在一封电子邮件中写道。“我们能够连接到服务器以重置它们。只有重新启动服务器才能解决问题。” [强调我的]

解决方法/修复

因此,解决方案通常归结为将其关闭并再次打开,即重新启动有问题的服务器,尽管您可以通过简单地设置日期来避免这种情况,例如在以下情况下建议:

背景/建议的解决方案

请注意,虽然根本问题非常棘手,但原则上几乎是未知的,因此有突出的帖子/用户对此进行了警告和解释,并提供了原则上如何处理它的建议,特别是:

于 2012-07-03T16:22:51.693 回答
0

根据所提供的信息,我们不能肯定地说什么。对于性能问题,我会推荐一个分析器,尤其是JProfiler来调查这个问题的原因。通过这种方式,您将能够找到问题所在。

这个程序有一个试用许可证,我认为这足以快速浏览。

更新:仔细阅读您的问题后,我看到您有很多 tomcat 实例为网站运行?表示之前的tomcat实例未能停止;他们仍然运行并占用所有资源。这个有可能。您必须先杀死所有旧的 tomcat 进程,然后再尝试启动一个新进程。

如果您在 Linux 上,您可以通过“kill -9”手动终止进程,然后再尝试重新启动服务器。

于 2012-07-05T03:41:09.423 回答