C#实时处理海量GPS定位信息的难题
系统概述
我们用C# 3.5做了一个Windows服务用来接收从GPS服务器发送来的海量定位信息(采用事件触发,我们订阅了GPS服务器的一个事件,GPS服务器不停地推送定位信息给我们),收到信息后做如下处理:
1、解析GPS定位信息;
2、存储GPS定位信息;
3、分发GPS定位信息给订阅了该GPS终端的客户端(发送Socket包到一个通信服务器专门处理分发事宜。接收GPS定位信息的服务和订阅GPS定位信息的客户端都连接到该通信服务器)
难题
1、由于GPS终端量很大(大概2万个),每秒上报的GPS定位信息非常多,系统处理不过来;
2、保存到数据库时会出现获取不到空闲连接的问题导致保存失败(数据库为Oracle 10G,最大连接数已改为200)。
求解决方案
不知道该采用哪种方式来处理该问题。要求同时接收和处理GPS定位信息。