1

(对不起,我不知道我应该在stackoverflow或其他相关网站上问这个问题。如果不合适,请移动它)

有一些不相关的学生群体,每个群体成员一起产生数据。每个成员都使用他的凭据登录到客户端桌面应用程序并将数据发送到服务器。如果其他组成员使用他们的凭据登录,他们应该会看到新数据。

当我想让客户端工作时,问题就出现了,尽管与服务器的连接出错了。如果他们无法连接到服务器,我不想阻止他们,所以他们制作数据,然后将其发送到服务器。

问题来了,在不连接服务器的情况下,我怎样才能在客户端建立成员资格并确保他确实属于该组,或者我如何知道其他成员在本地计算机中有新数据以便他的同事可以看到呢?

我不想使用另一台本地服务器,只是一台远程服务器和一台带数据库的本地机器。

4

1 回答 1

1

如果服务器不可用,那么知道一个人是否在组中的唯一方法是您是否将该信息存储在客户端上。当然,可以从组中删除某人并且(断开连接的)客户端不知道它。

解决这个问题将取决于您的系统是如何使用的。

  1. 如果会员资格不经常更改,您可以使用客户保存的会员资格,只要它不是太旧(例如,如果它小于 4 小时,或一些类似的规则就使用它)。
  2. 每当客户端重新连接到服务器时,它应该确保其本地数据在超过 N 小时时被刷新
  3. 另外,当重新建立连接,将数据发送到服务器时,服务器应该再次检查。如果用户已从组中删除,服务器可以拒绝数据
于 2013-02-20T16:26:39.193 回答