在ASP.NET 2.0中操作数据之五十八:在程序启动阶段缓存数据
“预装载”可以使用2种模式来预装载数据。 另一个模式,同时也是本文要探讨的内容,就是在程序启动时便装载数据入内存。对此,可以考虑将静态数据和需要很长时间才能生成的数据在程序启动阶段就缓存。举例,数据库表Patients有一个PrimaryLanguage列,其值可以为English, Spanish, French, Russian, Japanese等。不过,reactive loading模式会使用基于时间的缓存周期,这对静态数据来说没有必要。最好的办法是在程序启动阶段进行预装载。当处理一个类时,我们在访问其成员前,应先实例化。Static members要用关键字static来标识。该LoadStaticCache()方法应该在程序启动阶段就被调用。因此,访问数据库获取suppliers信息的情况只会发生一次,就是在启动阶段。在此,我们将优先级设为不可移除,这就确保了当内存不足时不会将其移除。
用户评论