java - 当多个客户端查看相同数据时,如何使有状态 Web 客户端保持同步?

标签 java gwt webclient stateful

在使用 GWT 创建的 RIA 网络客户端中,状态在网络客户端中维护,而服务器(几乎)是无状态的(这是保持站点可扩展性的首选技术)。

但是,如果多个用户在他们的浏览器中查看相同的数据,并且一个用户更改了一些内容,这些内容被发送到服务器并存储在数据库中,其他用户的浏览器状态仍然是旧数据。例如,显示了一棵树,其中一个用户从树中添加/删除了一个项目。

由于客户端中可以有很多状态,保持客户端状态同步的最佳技术是什么?是否有任何 Java 框架可以解决这个问题?

最佳答案

仅推送更改(增量),它适用,如果不适用——完全重新同步客户端。这就是我们对远程客户端所做的(不仅是 GWT,还有 Eclipse RCP)。我们在更改很小且是本地时发送增量上下文,并且在全局更改时我们重新同步。这将需要设计一个复杂的 diff 协议(protocol),并且通常需要从头开始重新设计远程客户端协议(protocol)。

关于java - 当多个客户端查看相同数据时,如何使有状态 Web 客户端保持同步?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2863983/

相关文章:

javascript - 在 GWT 应用程序中集成 JS 库

c# - 正确的 HTTPS 请求形式

.net - WebClient Headers 属性缺少 Add 方法?

.net - WebClient.DownloadFileAsync 无法引发异常

Java 8 流处理不流畅

events - GWT 的 BrowserEvent 和 NativeEvent 到底是什么?

java - 带有 JPA 子查询的 Spring Data 规范

java - 使用 GWT 进行图像平移和缩放

java - 当有 if 且没有 else 时在 java 中返回值

java - 定义包含 main() 方法的同一类的实例变量时出现 StackOverflowError