运行两个使用不同端口的Tomcat服务器,使用intern()将锁定相同的id或no



在我的Tomcat服务器Java代码中,我使用以下代码:

int port = 11111;
rmiConnectToMainServer(port);
id = request.getParameter("id").intern();
synchronized(id) {
    //call SaleFunction();
}

和另一个Tomcat服务器,其中

中的端口
int port = 22222;

问题是:String.intern()调用是否使用另一个字符串池?还是没有? ?

让我们假设一个id=1234的客户端同时从两个Tomcat服务器购买,他会被锁定吗?或者不用锁就能买??

请帮助我,我的应用程序现在在线..我担心如果出了什么问题。

提前感谢

每个JVM一个字符串池,因此您的Tomcat实例运行在不同的JVM中,您的"id"将不会被共享。

相关内容

最新更新