中/小型网络应用程序的缓存设计?

时间:2010-07-04 03:16:13

标签: javascript jquery ajax web-applications

我有一个网络应用程序,目前在JS中约有700个LOC(更多是服务器端)。我正在使用jQuery。当我发现自己试图最小化对服务器的AJAX请求时,我有一个尴尬的缓存和意大利面条代码开发组合。感觉我需要一个更集中的解决方案。

我的想法:创建一个带有AJAX调用的地图(URL和args),以及一个脏位。如果应用程序的某个部分确定地图中的数据已过时,则会将脏位设置为true。如果应用程序的一部分请求数据,并且数据是脏的或不存在,则映射将在返回之前从服务器请求它。否则,地图将直接返回。

这听起来像是一个好的设计吗?或者是否有一个jQuery插件或其他一些已经执行此操作的代码?

2 个答案:

答案 0 :(得分:1)

听起来不错。您基本上是在创建自定义缓存系统。您可以根据需要使缓存无效并刷新。这就是任何缓存系统的核心。

就jQuery的可用库而言,我不能说。

答案 1 :(得分:0)

jCache插件是一个jQuery插件,允许您按键缓存(在您的情况下为URL和args)。检索值时,可以使对象包含实际数据和脏标志(或Date对象作为到期控件)。