我有几辆车每分钟向服务器发送数据。服务器应该监听并解码数据以存储在数据库中。每分钟将有数千个条目。解决该问题的最佳方法是什么?
Paul
问问题
1433 次
3 回答
6
我个人最喜欢的 WCF 或 WebService 场将数据泵送到 Microsoft 消息队列 (MSMQ) 并让应用程序服务器(1 个或多个)转换数据并将其放入数据库。
随着您的深入(如果需要),您可以使用 MSMQ 的功能来处理超时、负载缓冲、“死信”、服务器故障等。 考虑这篇文章。
在面向 Web 的一面,因为它是无状态的且很薄,您可以轻松地扩展这一层,而无需考虑复杂的负载平衡。您可以使用 DNS 负载平衡来启动,然后在需要时转向更好的解决方案。
进一步说明,通过使用 MSMQ,您还可以通过查看队列中有多少消息来了解系统“落后”多远。如果这个数字接近 0,那么你很好。如果该数字不断上升,则您需要更高的性能(添加另一个应用程序服务器)。
于 2009-03-31T20:22:44.347 回答
1
我们正在按照 Jason 所说的做,除了使用带有自定义负载的直接 TCP/UDP 套接字侦听器以获得更高的性能。
于 2009-03-31T23:01:02.500 回答
0
您预计每次手术需要多长时间?从您所说的看来,您似乎可以在处理后直接将数据写入数据库,因此您根本不必同步线程(数据库应该为您处理好)。
于 2009-03-31T20:19:21.017 回答