首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

请问解决方案 3000个客户端写,另外3000个客户端读 秒级

2012-03-14 
请教解决方案3000个客户端写,另外3000个客户端读 秒级.请教解决方案3000个客户端写,另外3000个客户端读 秒

请教解决方案 3000个客户端写,另外3000个客户端读 秒级.
请教解决方案 3000个客户端写,另外3000个客户端读 秒级. (不清楚是否发错了板块,如若错了还请斑竹帮忙,谢谢)


1. 3000个客户端每秒要向服务器提交一次数据,每个客户端每次提交10K左右, 服务器存入数据库.
2. 另外3000个客户端每秒要向服务器发送一次请求,服务器根据客户端的标示不同查询数据库,并返回数据.


1. 服务器加队列是不可避免的,但如果向数据库写的时间如果小于每次接收到的数据,那可惨了,队列越来越大,恐怖!
2. 没想好用什么协议,毕竟是3000个客户端,每个客户端每一秒都要一次数据!!!







[解决办法]
10k/s*3000=30M/s

服务器带宽和数据库压力很大啊。


这个我认为只有先做出来测试下再优化。

发送的数据最好压缩下,不然需要300m以上的服务器带宽。
[解决办法]
要秒级的话就不要用队列了 直接开多线程 抗不住的话就跟老板说要用多CPU的服务器才行
[解决办法]
那么你应该把处理客户端请求和写入数据库做成同步的操作,再或者就是弄个队列满了以后阻塞客户端请求。

但是,如果是因为你说的那个原因导致队列越来越大,那么弄个队列我觉得就没什么意义了,就是做成同步的就可以了
[解决办法]
如果网络不是问题的吧,一般3000CAPS还是很容易的,CPU和DB瓶颈不大
[解决办法]
瓶颈很可能在网络带宽和磁盘数据带宽。
[解决办法]
单算写部分,3000个,每秒10k(应该是BYTE把),就算不算报文头,也要80k*3000=240M/S,百兆光纤你自己看着办把

热点排行