再会。
底线是,有客户端(Windows 应用程序),您需要在它们上同步数据。
到目前为止的想法是:
- SignalR 通知新数据可用;
- CRUD 的 RestAPI
那些。在对 API 的每个请求中,API 都会告诉 SignalR'y 通知客户端新数据。
假设你可以通过SignalR来驱动所有的数据,但是,比如你第一次连接的时候,会有一个接收所有相关数据的请求,可能有,比如10000(比如用户数据),SignalR 可能不会取出这样的负载(它有多少限制,32kb?),我认为这不是正确的方法。
这有多现实和正确?
主要问题是如何正确地做到这一点。
ps - 负载不大,所以我假设 SignalR 和 API 将在同一台服务器中。
我会使用 SignalR 发送有关新数据的消息,之后客户端自己应该调用适当的 API 进行同步。
为什么给 10mb 给 json,逐页返回。好吧,10mb 并不多。
您可以随意使用服务器(取决于您的要求),客户端没有区别。是认证两次通过吗?
在客户端,您必须保存上次同步的时间,以免发送整个数据库,而只发送上次同步时间更新/添加的数据
理论上对你来说应该没有什么区别,客户端每半小时同步一次或者在一个信号上同步一次,同步的api是一样的。
关于 jwt,它取决于谁发布它以及如何发布它,因为您需要在服务器上检查它的有效性。
有很多方法。首先,订单没有从数据库中删除,它被标记为已删除。您可以将所有操作与日期/时间存储在单独的表中并将这些操作滚动到客户端,或者您可以将最后一次订单更改的日期存储在订单表中并使用此日期来了解此订单是否需要同步或不是。这完全取决于您的任务。