Tomcat中会启动一个jvm还是多个jvm?

greencacti 2011-07-13 09:55:20
请问Tomcat会对应每个Web Application创建一个JVM还是一个Tomcat服务器只创建一个JVM?创建JVM的时候是以进程的形式创建还是以线程的形式创建?
...全文
1508 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
shine333 2011-07-15
  • 打赏
  • 举报
回复
另外,我想,在怎么设置permission,应该也无法避免OutOfMemory这样的情况,所以重要的应用还是分开点好。
shine333 2011-07-15
  • 打赏
  • 举报
回复
为什么不是exit(250)啊
humanity 2011-07-14
  • 打赏
  • 举报
回复
话说,6 年前,我去 myjavaserver.com 注册了一个账户,然后测试了一下,在里面上传一个 hello.jsp,里面写着下面这句话,大家都懂的,第二天,我的账户被设置成只读的了,不能再上传文件了 ^_^ ,楼主想,人家做一个共享的服务器,一句话都让所有程序退出就那足以证明它用的是同一个 jvm 进程。



我之所以写这个 jsp 是为了测试它是否安装了合适的 java.security.policy。

以前我还在里面上传了一个让 Eclipse 3.0 支持 Eclipse 3.4 里面的右下角那个 GC 功能的插件呢,我没留源码,想去下载这个插件,不过现在我再想起来这个网站时,它已经关闭数年了。 ^_^





<% System.exit(1); %>
yaohanyi 2011-07-14
  • 打赏
  • 举报
回复
Web Application是在一个JVM进程中,一个进程由n个线程组成啦
amber_room 2011-07-14
  • 打赏
  • 举报
回复
装多个Tomcat分配不同的端口号,会不会产生冲突之类的问题
magong 2011-07-14
  • 打赏
  • 举报
回复
一个JVM中可以有多个Class Loader
greencacti 2011-07-14
  • 打赏
  • 举报
回复
但这里就有一个问题了,理论上来说每个应用都有自己的Class Loader,有自己的静态变量,各个应用之间的静态变量不能共享。那就是说一个JVM中可以有多个Class Loader,对吗?
shine333 2011-07-13
  • 打赏
  • 举报
回复
截止目前为止,一个tomcat,无论里面多少个host/engine/context,就是一个jvm进程

所以,火龙果的潜台词就是为了避免一个应用(war)搞垮其他的,最好每个应用分配独自的Tomcat
  • 打赏
  • 举报
回复
一般来说一个 Tomcat 只会放一个应用
andyniuandyniu 2011-07-13
  • 打赏
  • 举报
回复
一个jvm虚拟机
magong 2011-07-13
  • 打赏
  • 举报
回复
Tomcat启动一次(一个进程)创建一个JVM,所有的Web应用在同一个JVM中跑。一个应用弄垮了JVM则所有应用都跨。

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧