服务器 - 客户端应用程序通过http / xml进行通信。服务器发送带有数字或块ID的xml文件。有时客户端会收到比预期更高的块ID。所以我需要排队,因为订单很重要。我使用TreeMap<Integer, Document>
所以我可以将xmls添加到地图中,直到收到带有预期块ID的xml。 xml也可能由服务器发送,但客户端更新。由于发送并忘记,服务器不知道这一点。所以我的问题是如何处理这个问题?我应该重构架构吗?它有一个模式吗?
示例
expected chunk id / real chunk id
0 0 eval
1 3 add to queue
2 4 add to queue
3 2 add to queue
4 1 add to queue
5 5 eval / eval queue
6 6 eval
- 7 no send to client
7 8 ?
8 9 ?