我正在开发一个winform应用程序,它将被美国和海外的团体使用,取代用旧技术构建的现有应用程序。
由于对美国数据库服务器的过多调用,旧应用程序在海外的性能相当缓慢,因此我希望在客户端缓存尽可能多的内容。
什么是缓存数据的最好方法,用于不经常更改但可能更改的数据?我如何防止数据变得陈旧,而不是在每次加载时完全拉出它?
发布于 2009-07-23 15:47:53
一种快速的解决方案是为数据创建某种类型的校验和,而客户端一开始只要求这样做。如果相同,则不需要更多数据,该部分是最新的。如果数据发生变化,那么sum也会发生变化,客户端将获得新的sum以及新的数据。
每次只传输这些数据听起来应该比你所有的数据都少。
发布于 2009-07-23 15:57:02
如果您的数据很少更改,您可以使用sql触发器来设置等同于"updated“标志-然后简单地在任何其他客户端-服务器通信中利用该标志。如果您将insert/update/delete触发器添加到所有半静态表和一个watchdog表中,则应该可以执行此操作。
发布于 2009-07-24 13:43:09
不确定数据集可能是什么样子的,但是如何计算数据集上的类似SHA256的散列,并将该散列存储在客户端和服务器上。然后,在从服务器获取之前,只获取散列,并与客户端上的本地散列进行比较。如果散列匹配,则使用本地存储的数据集。
https://stackoverflow.com/questions/1172684
复制相似问题