使用场景: Spring默认单列模式。从其它服务器那边获取一个动态参数,动态参数2个小时变一次,人比较懒,所以就没有从数据库中读取,在工具类中加了个成员属性
private static String dynamicPass = ""; // 动态验证码,手动调一次获取动态码,然后赋值
直接操作 成员属性dynamicPass ,测试环境跑的没有任何问题,然后上生产出问题了。生产环境是双击负载, 所以这一个单列其实是有2个对象的,其实并没有单列,所以还是改成从数据库读取。
结论: 代码中那些会变化的数据,还是从数据库读取好,虽然会麻烦很多,但是可以很好的扩展。 单列模式 只是在这个WEB项目中单列, 加上负载均衡 就有多个实例了