【Muduo复现笔记】 PingPong测试程序

【Muduo复现笔记】 PingPong测试程序

pingpong_server

void onConnection(const TcpConnectionPtr& conn)

将新连接connfd设置为TCP_NODELAY属性。

作用:TCP/IP协议默认开启了Nagle算法,该算法通过减少需要传输的数据包来优化网络。在内核实现中,数据包的发送和接收会先做缓存,分别对应于写缓存和读缓存。

对于关闭TCP_NODELAY,则是应用了Nagle算法。数据只有在写缓存中累积到一定量之后,才会被发送出去,这样明显提高了网络利用率(实际传输数据payload与协议头的比例大大提高)。但是这又不可避免地增加了延时;与TCP delayed ack这个特性结合,这个问题会更加显著,延时基本在40ms左右。当然这个问题只有在连续进行两次写操作的时候,才会暴露出来。

void onMessage(const TcpConnectionPtr& conn, Buffer buf, Timestamp)*

收到了数据,直接将数据发送。

int main(int argc, char argv[])*

设置Logger::setLogLevel(Logger::WARN);

只有日志级别大于WARN的才会被输出。

EventLoop loop; 初始化单线程的loop

TcpServer server(&loop, listenAddr, “PingPong”); 初始化服务器,默认单线程

server.setConn

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值