大量数据的并发处理
手里接个活真蒙了. 上家留下来的网站.
有2000个信息点 有可能同时并发上传GPRS坐标.或者其他数据. 文档上写的数据块大小是1KB(怎么可能这么小啊.)每5秒一次.24小时不间断接受.前后最少要保存两个月的数据以供分析.
二期上面要到5000个信息点. 降到8秒一次. 24小时不间断接受.前后最少要保存一年的数据以供分析.
求稳这种情况该做哪些处理. 缓存?NOSQL?Radis? hadoop? 怎么样才能把网站的响应时间降低到毫秒基本的.
消息队列貌似也不给力,这是我之前做过的一个项目,用的rabbitMQ,刚在自己电脑上做的测试,开2000个线程并发,而且是持续连接,每5s触发一次请求,开到10分钟以后请求等待达到了平均10s,但如果线程不是持续连接,开一次就关掉的话,请求平均时间在1s左右
[解决办法]
长连接传1K数据很快的,或许你客户端开的线程太多了。导致测试不准。服务器可以使用mina或者netty
[解决办法]
redis有队列支持,上传上来的数据存入redis,后台写一个程序,批量执行数据库操作,
性能还是不错的。