Kon*_*rin 3 .net hardware failover design-patterns high-load
我们需要构建一个能够每秒处理40,000条消息的系统.任何软件或硬件故障都不会丢失任何消息.
每条消息大小约为2-4Kb.
处理消息包括验证消息,进行一些简单的算术计算,将结果保存到数据库以及(有时)向其他系统发送通知.
优选的软件技术是.Net.
哪种软件和硬件模式最适合此类任务?
它需要多少硬件?
我要做的第一件事就是排队通知.然后我将所有不需要返回值的数据库写入队列.然后我会考虑扩展.
其他考虑因素:*避免使用一个庞大而笨重的框架,这个框架比你可能需要的更多的工作背后的场景.*尽可能使用缓存和静态变量.
每秒40,000条消息是可行的,但是当您向混合添加IO时,即使在具有大量内存的超高速硬件上也可能无法预测.尝试尽可能多地进行带外处理.如果失败,请查看是否可以运行多个线程(在多核或多进程机器上),并在需要时查看群集中的多个服务器.
编辑:
在这样的场景中,我无法强调负载测试的好处.制作一个简单的原型并加载测试.优化原型直到获得理想的结果.然后根据原型构建最终解决方案.在测试所需的性能级别之前,您正在猜测解决方案.
归档时间: |
|
查看次数: |
318 次 |
最近记录: |