生产者发送消息,采用轮询的方式,threadLocal的自增对队列取模。无法保证生产者消息的顺序性。
司机最新位置点,保存到redis的geohash里面,根据redis进行去重。
但是这样会造成redis压力过大,不仅要去重访问,而且查询周边运力等服务,也会查询。造成qps过高,性能不满意。
将其进行拆分,以空间换时间。redis去重逻辑单独保存一份。以城市+司机ID为key。根据时间戳进行去重
生产者发送消息,采用轮询的方式,threadLocal的自增对队列取模。无法保证生产者消息的顺序性。
司机最新位置点,保存到redis的geohash里面,根据redis进行去重。
但是这样会造成redis压力过大,不仅要去重访问,而且查询周边运力等服务,也会查询。造成qps过高,性能不满意。
将其进行拆分,以空间换时间。redis去重逻辑单独保存一份。以城市+司机ID为key。根据时间戳进行去重