java - 控制 Linux 中 Java 独立运行的最大数量

标签 java memory-management process

我们开发了一个Java独立程序。我们已经在 Linux (RedHat ES 4) cron 中配置 安排每 10 分钟执行一次 Java 独立操作。每个独立 有时可能需要 1 小时以上才能完成,有时可能会完成 即使在 5 分钟内。

我正在寻找的问题/解决方案是,执行的 Java 独立程序的数量 任何时候都不应超过,例如5个进程。所以,举例来说, 在 Java 独立/进程启动之前,如果已经有 5 个进程正在运行, 那么这个过程不应该启动;否则这会间接启动 创建 OutOfMemoryError 问题。我该如何控制这个?我还想将这 5 个进程限制配置为可配置。

其他信息:
我还配置了 -Xms-Xmx 堆大小设置。

有什么工具/机制可以控制这个吗?

我还听说过Java Service Wrapper 。这是怎么回事?

最佳答案

您可以创建 5 个空文件(名称为“1.lock”、...、“5.lock”),并让应用程序锁定其中一个来执行(如果所有文件都已锁定,则退出)。

关于java - 控制 Linux 中 Java 独立运行的最大数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2522875/

相关文章:

java - 无根测试

java - 应用程序在 Websphere Liberty Profile 上神秘重启

Java 初学者指南 : FindFac & Nested Loops

c - 为什么我要 free() 一个由 malloc() 分配的对象?

java - 如何让 java getRuntime().exec() 运行带参数的命令行程序?

centos7中的上下文切换延迟

java - 根据行数据从表行中提取值 - JSoup

java - 在 Java 中,物理内存如何保存每个长度为 1MB 的字符串 HashMap ?

c - 为什么我的程序有内存泄漏检查错误?

linux - Bash:从 pid 获取规范路径和参数