http,grpc及netty的抓包及速度测试

前提

http调用过慢(很多原因:地域、http首次调用加载会慢,项目初始化慢),排除这些外,更多是tcp的来回次数决定了性能,通过Wireshark研究了下http,gRPC及netty每次调用的请求次数。

三次握手

无论哪种方案, 都脱离不开三次握手。握手的协议如下:
在这里插入图片描述
通过Wireshark,可以清晰的看到三次握手。
第一次:客户端请求握手。
在这里插入图片描述

第二次:服务端表示收到了握手请求, 并返回给客户端可以握手了。
在这里插入图片描述

第三次:客户端进行握手。
在这里插入图片描述

Http请求

在这里插入图片描述
截图中包含了3次握手和调用结束时关闭链接的分手,因为http调用一般都是释放链接。总共9次来回。

gRPC请求

在这里插入图片描述
图中没有包含握手,会有7次来回,来回详情还需研究。

通过netty进行socket请求

在这里插入图片描述
图中没有包含握手,会有4次来回。
1.客户端发服务端一个请求。
2.服务端说收到了,本次请求完成了。
3.服务端处理完后, 返回数据到客户端。
4.客户端说收到了。本次返回完成了。

结论

写了三个功能相同的服务端,通过调用发现, 调用时间和调用次数成正比。
在网络好的情况下,使用http在客户端和服务端之间通讯没有问题。在不太稳定或ping值过高时,建议通过tcp代理(可以通过netty搭建代理服务器),减少http带来的tcp请求,到服务端再进行http请求,会提高访问速度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值