java - 从 Java 程序执行控制台脚本

标签 java linux bash

我正在考虑从 java 程序调用 bash 脚本。我需要每分钟执行一次,但次数与来自数据库的客户端数量(大约 1000 个)一样多。

这将类似于 curl -o/dev/null -s -t "%{total_time}"| awk ...。我相信将其实现为 bash 脚本比用 Java 更好,因为它不会那么轻量级,但需要在 java 代码中做很多事情来重现该行为。

我知道 Runtime.exec(),但它每次都会创建一个系统进程。我想创建 1-10 个这样的进程是可以的,但是 1000 个系统进程是 Not Acceptable 。

这样做的更好方法是什么?

最佳答案

您可以使用 Runtime.exec 等待结束 (waitFor()) 并发使用固定大小的线程池。

关于java - 从 Java 程序执行控制台脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10000423/

相关文章:

java - Sonarqube 仅显示 Java 测试的一些测试覆盖率

Java 将字符串转换为 JLabel

c++ - 使用Linux pread可以避免 “unavailability of data for reading written by a different thread”吗?

linux - Linux 脚本中的模块加载/卸载命令

linux - 如何准确显示命令输出的 10 行

bash - 如何将某些命令永久添加到 .bash_history?

java - 我们是否只需要导入一个包来创建一个对象,或者还需要从该对象调用一个方法?

java - 如何使用 .jar 文件中的类?

linux - Bash 脚本 - Crontab 完成 bash 脚本的一部分但不是全部

bash - eval $(docker-machine env默认值)在iterm启动脚本中不起作用