譬如统计qps
每来一个请求
为了不影响zuul正常流程
就异步化,用线程池的一个线程去操作redis进行统计
如果qps有点大,譬如几百
这样有个问题就是java线程池或者redis池可能用光
这样就统计不过来吧?
用消息队列可否解决这个问题?
发消息给消息中间件也是网路io
为了不影响zuul正常流程
也需要用线程池的一个线程去发消息
这样java线程池也可能用光吧?
譬如统计qps
每来一个请求
为了不影响zuul正常流程
就异步化,用线程池的一个线程去操作redis进行统计
如果qps有点大,譬如几百
这样有个问题就是java线程池或者redis池可能用光
这样就统计不过来吧?
用消息队列可否解决这个问题?
发消息给消息中间件也是网路io
为了不影响zuul正常流程
也需要用线程池的一个线程去发消息
这样java线程池也可能用光吧?
4 回答1.7k 阅读✓ 已解决
4 回答1.5k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
4 回答2.3k 阅读
3 回答1.2k 阅读✓ 已解决
2 回答832 阅读✓ 已解决
2 回答1.4k 阅读
线程池设置合理就没问题,比如设置为核心数和最大数为1,队列设置为固定的长度比如预估的流量峰值。每个任务足够简单快速,没问题的。