- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有一个 tomcat 6.0.20,4 月 1.2,jdk 1.6.0_15 和 mysql 5.1.38 在一个 4 GB 内存的 rhel 盒子上运行。上面有一个简单的 jsp/servlet 应用程序,有 5 个用户,一个 struts 1.2.0.9 有 64 个用户,一个 struts 2.0 应用程序有 35 个用户。 struts 2.0 的用户每秒钟都会创建一个条目,一天大约有 900 个条目。我还在最后两个应用程序中使用 toplink 进行持久化。我已在代码中将所有非引用对象声明为 null,并已从 struts 2 站点和 tomcat 站点为配置文件应用生产值。在mysql中应用线程缓存,减少wait_timeout和interactive_timeout等同于tomcat的 session 超时。在linux中增加文件描述符。返工查询。检查线程转储,查看 gc 统计信息,在此基础上应用上述更改,
YET still facing "java.lang.OutOfMemoryError" error.
在不同的时间,它针对不同的事物,有时是 Servlet.service(),有时是 image.servlet,有时是 jasper 引起的。
extremely frustrtating, as the errors are not constant but keep changing over time
Any help please would be greatly appreciated!!!
JAVA_OPTS=-server -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled -XX:+CMSParallelRemarkEnabled(tomcat 管理器报告 34 mb 为空,因此没有使用 permsize、mx 和 mn 等)
持久性.xml
<property name="toplink.jdbc.url" value="jdbc:mysql://localhost:3306/dbname?autoReconnect=false"/>
服务器.xml
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="2000" redirectPort="8443" compression="on" compressableMimeType="application/octet-stream,text/html,text/xml,text/plain,application/x-javascript,image/gif,text/css,image/gif,application/vnd.ms-excel,application/pdf" enableLookups="false"/>
上下文.xml
<Context reloadable="false" delegate="false" privileged="false">
最佳答案
首先,您必须确定哪个进程占用了所有 CPU。真的是java程序吗?如果您还没有解决这个问题,请尝试使用 top(1)
来解决这个问题。
如果您有并且确定它是 Java 程序,enable remote debugging .下次 CPU 沸腾时,连接并确保没有线程处于死循环。
如果不是这种情况,则说明您内存不足(无论 tomcat 管理器怎么说)。启动 JMX console并检查各种内存空间。我的猜测是 permgen 非常满(你的类路径上有很多大的 JAR 吗?或者你在某个地方使用 cglib?)当这种情况发生时(并且因为你启用了 perm gen GC),Java VM 将尝试释放内存永久生成空间。
除非您使用的是在运行时创建类文件的东西(例如 Groovy 之类的脚本语言),否则这是行不通的:在普通的 Java 程序中,类永远不会被 GC。如果您仍然这样做,GC 将运行并运行并且除了消耗所有 CPU 功率外什么也做不了。
关于在约 110 个用户连续运行两天后,Java 服务器 CPU 使用率达到 100%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1542502/
我们有一个 SQL 服务器,其中包含大约 40 个不同的数据库(每个数据库大约 1-5GB)。该服务器是8核2.3G CPU和32Gigs RAM。 27Gig 固定到 SQL Server。 CPU
我通过创建一个简单的循环并在数组中添加元素来测试 Java 8 并行流 API 的性能。 与非并行相比,我获得了巨大的性能提升。 但是当我检查我的任务管理器时,我看到了一个不受控制的 CPU 使用率,
我在使用 JFX 应用程序时遇到了一些问题。在我的本地开发系统(Linux)上,我的应用程序的 CPU 使用率约为 0-2%。当我在客户 Windows 虚拟机系统上安装并运行我的应用程序时,CPU
我在 unix 上工作。我想知道进程当前的 cpu 使用情况。我知道 ps 给出了在进程启动之前使用的 cpu 平均值 - 这不是当前使用情况。 有没有办法从 top 命令只打印 cpu 而无需 10
我尝试对许多文件进行哈希处理,但它没有使用满 CPU 能力。它只消耗25%。我测试将繁重的进程移动到线程中。但仍然没有什么不同。我来自 nodejs 使用 sharp 库。有同样的任务。它消耗所有的C
有没有办法在 CentOS 中获取 CPU 使用率?我需要解析这些信息并将其从 Perl 脚本中绘制出来,因此它最好是一个简单的工具,可以打印出一个单一的输出。 最佳答案 更简单,看/proc/loa
早上好。 目前我正在 Ubuntu 服务器 11.10 中运行 Java Web 应用程序。对于我的 Java 应用程序,我使用的是 apache、tomcat 和 mysql。 在过去的几周里,我的
我想做的事 我有一个计算密集型 OCaml 应用程序,我希望它在后台运行而不影响正常的计算机使用。我想为用户提供两个选项: (1) 应用程序仅在 CPU 使用率几乎为 0% 时运行; (2) 应用程序
我使用Couchdb创建了一个私有(private)NPM镜像,但我发现beam.smp将我的 CPU 使用率保持在 100%,有没有办法降低它,比如 50%? 非常感谢你。 最佳答案 您不能直接限制
我正在 docker 容器内构建一个项目,在创建容器时没有任何资源限制。当我监控它时,我看到了不同的 CPU 使用率结果。 来自 ctop 来自 Grafana(全节点导出器图表) 来自 cAdvis
我需要在 Web 开发编码 session 期间收集有关 Firefox CPU 使用率的数据,我想知道是否可以监视特定 firefox 插件的 CPU 使用率。 现在我正在使用 windows 的
R 是单线程的。 使用 R,如何检查 Windows 和 Linux 中有多少内核/线程正在运行 R? (或运行了多少卢比) 使用 R,如何检查 Windows 和 Linux 中运行 R 的每个内核
我正在尝试像示例中那样测试 Kubernetes HPA here kubectl run php-apache --image=gcr.io/google_containers/hpa-exampl
在我们的办公室,我们有一个开发服务器:Win 2k8 server R2 - Coldfusion 9(.0.0) - MySQL 5 ... 几乎每天早上上类时,我都会发现服务器的 CPU 为 50
我有一组 cpu 消耗执行,每个执行都在低优先级的线程中运行。这些线程将在一个进程(如 IIS)中运行,该进程具有许多我不想减慢它们速度的其他线程。我想计算所有其他线程的 cpu 使用率,如果它大于
我是 azure 云的新手,我已经部署了我的第一个辅助角色。 在我的本地系统中需要 30 分钟才能完成的过程在 azure 辅助角色上需要 1 个多小时。 为了查找问题,我已访问辅助角色的远程桌面。我
这是我的测试 boost::tribool 示例: #include #include "boost/logic/tribool.hpp" int main() { boost::logic::tr
我正在使用 docker 远程 API 来检索正在运行的容器的统计信息。对于 CPU 使用情况,我得到的例子是: "cpu_stats": { "cpu_usage": { "to
我是 azure 云的新手,我已经部署了我的第一个辅助角色。 在我的本地系统中需要 30 分钟才能完成的过程在 azure 辅助角色上需要 1 个多小时。 为了查找问题,我已访问辅助角色的远程桌面。我
我知道意外的无限循环通常会导致 CPU 使用率较高。但是,我不太明白为什么。谁能给我解释一下吗? 最佳答案 CPU 在执行该循环(永远不会结束)时无法执行任何其他操作。即使您使用的是抢占式多任务系统(
我是一名优秀的程序员,十分优秀!