java 启动多个jvm实例_当多个java程序在同一台机器上运行时

1) If I have a web service written in java it will need a JVM instance to run. So can JVM be made a daemon process?

是的,它可以。如何完成取决于O / S和Web服务器容器本身。

2) If yes when we run any other java application it will use this instance of JVM or create a new one?

不是。每个Java应用程序都使用独立的JVM。

每个JVM是一个单独的进程,这意味着没有堆栈,堆等的共享。 (通常,可能共享的唯一的事情是只读段,它们包含核心JVM和本机库的代码…与正常进程可能共享代码段的方式相同。)

3) Main memory available in any machine is constant. When we start n java processes simultaneously without providing any initial heap size how is the heap size distributed among processes?

如果不指定大小,决定创建堆的大小的机制取决于您使用的JVM /平台/版本,以及是使用“客户机”还是“服务器”模型(对于热点JVM)。启发式方法不考虑其他JVM的数量或大小。

在实践中,你最好直接指定堆大小。

4) Is there any process that manages n number of JVM instances or is it managed by OS itself?

也没有。 JVM实例的数量由可以启动进程的各种操作的操作决定;例如守护程序脚本,命令脚本,在命令行中键入命令的用户等。最终,如果操作系统耗尽资源,则操作系统可以拒绝启动任何更多的进程,但是JVM与其他进程没有任何区别。

5) When stop-the-world happens during an GC are other JVM instances(different threads I assume) affected?

不.JVM是独立的进程。它们不共享任何可变状态。垃圾收集独立地在每个JVM上操作。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值