【问题标题】:Weblogic managed serverWeblogic 托管服务器
【发布时间】:2010-12-05 03:44:18
【问题描述】:

当我们在 weblogic 实例上启动托管服务器时,托管服务器会启动 jvm。对? 那么现在当我们在同一个托管服务器上的同一个 weblogic 实例上部署多个应用程序(war 文件、ear 文件)等时,所有这些应用程序是否都在同一个 jvm 上运行? 那么属于 app1 的对象(name = obj1)如何与 app2 中名称相似的对象(name = obj2)区分开来?

【问题讨论】:

  • 好的,我已将您的五个帐户合并到您唯一的一个注册帐户中:stackoverflow.com/users/454671/kaushik 此外,您继续添加答案而不是使用 cmets。您可以随时编辑您的问题以添加信息,并且您可以随时将问题的答案留给 cmets。如果您能设法登录您的真实帐户(而不是创建一个新的未注册帐户),您会发现您现在有足够的代表在任何地方制作 cmets。

标签: weblogic


【解决方案1】:

是的,EAR、WAR 等所有应用程序都在同一个 JVM 中运行。

JVM 是一个 java 进程,这些工件是在该 JVM 中运行的多个应用程序。

我不清楚您所说的跨应用程序相同的对象名称是什么意思,(您的问题是 obj1 和 obj2),但如果它们是连接池等之类的东西,它们凭借 JNDI 在应用程序中具有唯一标识符。

如果您指的是简单的类(和对象),它们将由 Java 类加载器单独加载和维护。

阅读文档上的Application Classloading Hierarchy

每个应用程序都会收到自己的 类加载器层次结构;的父母 这个层次结构是系统类路径 类加载器。这隔离 应用程序,使应用程序 A 看不到类加载器或类 应用程序 B。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-10
    • 2016-11-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多