从nacos config的代码来看,long pulling就是client端定时发起HTTP请求,server端在接收到请求后,在超时时间内定时做数据比对。当配置有变更时,server端写response。
此策略不会导致client端与server端频繁的建立过多的连接么。 想问下nacos config采用这种方案的考虑是什么,以及此方案的收益是什么。
只有上次的监听失败,才会再次建立起一个新的http链接去做,使用http协议最简单的就是用这种长轮训的模式,不需要客户端实现websocket协议或者Server Send Event协议,并且JDK底层对于http的使用是支持socket复用的,并且一般情况下,一个sdk在运行期间,同一时刻只会有一个长轮训监听任务,对于链接的过多建立问题,是不怎么严重的,同时1.3.x以及1.4.0重新优化了对于http层的使用,直接复用链接,而不是复用底层socket
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。