繁体   English   中英

通知客户更新的最佳方式?

[英]Best way to notify clients for an update?

好的,在服务器端有一个桌面应用程序,用于将一些信息插入数据库(新闻,图像等),我有客户端从数据库收集这些信息并将它们存储到本地XML中。

因此,每个客户端从数据库下载新闻并显示它们。

问题是我如何通知客户有更新。

我的解决方案

我想使用像UpdateID这样的数据库,并且每次数据更新到数据库UpdateID都应该是Incremented +1,然后每个客户端都应该在其XML中有一个属性UpdateID,并检查他们的UpdateID是否与Server UpdateID匹配,如果不是这样的话一个新的更新。 在每次成功更新时,客户端都应将服务器UpdateID放入其XML UpdateID中。

那么有没有更好的方法来实现这一目标?

PS:我正在使用的数据重新呈现层是WCF服务

我认为你提出的拉模型可能是最容易实现的,也是最简单的问题解决方案。 但是,知道您正在使用WCF Web服务,您可以使用WCF Callbacks实现推送模型。 在这个模型中,您可以像平常一样编写服务合同,但客户端在服务器上注册自己。 在服务器上的数据更新时,服务器在所有已注册的客户端上调用回调函数,该客户端通过获取新数据进行响应。

该模型的典型展示应用是票务系统,票据经常被预订和发布。 这种方法消除了客户端不断轮询服务器的需要。

名为“ 使用WCF回调消除服务器轮询 ”的文章提供了有关该主题的更多详细信息,并附带了票证系统示例。 本文还介绍了此方法。

我并不是说这比你自己建议的更好,但它可能值得研究。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM