我们有一个会员系统,每天可以计算数百万次横幅印象/点击次数。
目前它向SQL写入每个在每个请求上实时发生的Impression/Click。重负荷的点击次数计数设计
Web应用程序提供这些请求。
我们面临着两个问题:
如果我们有很多每秒并发请求时,SQL是 开始非常努力地插入Impressons /点击数据和 作为导致问题#2。
如果SQL现在很慢,请求正在累积,并且 正在Web服务器上的队列中等待。因此,我们在Web应用程序上有一个缓慢的 ,并且请求没有被处理。
现在我们正在考虑通过取出写入SQL逻辑从Web应用程序的改变设计(写一些本地存储,而不是:我们在高层认为
设计)并制作独立服务,该服务将从本地存储中读取,并最终将汇总的印象数据/点击数据(不是实时)写入后台的SQL。
我们的约束:
- 10 web服务器(负载平衡)
- 1 SQL服务器
你认为建议的设计是什么?
你会使用NoSQL作为每个Web服务器的本地存储吗?
建议您的选择。
考虑CQRS体系结构 –