最近在看dubbo的官方文档:
dubbo协议(注:dubbo支持多协议),通过使用长连接减少握手,通过NIO及线程池在单连接上并发拼包处理消息,通过二进制流压缩数据,比常规HTTP等短连接协议更快,适合小数据量大并发的服务调用
基于NIO的非阻塞实现并行调用,客户端不需要启动多线程即可完成并行调用多个远程服务,相对多线程开销较小
1,TCP短连接和TCP长连接
TCP短连接,client和server一次读写后就会关闭,所以管理起来比较简单,存在的连接都是有用的连接,不需要额外的控制手段。适合传输大数据,如文件、视频等
TCP长连接,client和server完成一个读写后,连接不会主动关闭,后续读写操作会继续使用这个连接。需要通过TCP保活功能探测长连接的存活情况,关闭一些长时间闲置的长连接,限制每个客户端的最大长连接数。减少握手次数,适合小数据大并发。
未完待续…