在应用程序放在双机上时,使用静态的全局变量引发的问题?
原来我们的Web 应用是放在一台机器上的,后来做了双机,起到均衡负载的作用,作了双机后,发现一些资源经常被重新创建,究其原因发现是一些全局的静态数据,虽然OOD不提倡使用这些静态的全局变量,可是项目中难免会用到。
如
在程序中记录:配置文件的一个实例
private static JPropertiesSetting _instance=null;
使用时通过调用如下代码:
JPropertiesSetting getPropertiesInstance(){
if(-instance!=null){_instance=new JPropertiesSetting() }
return -instance;
}
但是发现 有时候if(-instance!=null) 是不成立的,有时候是成立的,就是因为双机导致了 程序在创建实例是不一定会创建在那台机器上.
我想问一下,各位在项目处理中,遇到静态全局变量,尤其是在双机上运行时怎么处理的?谢谢