首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Nginx 实战系列之一:Nginx 压测方法论和性能指标

Nginx 压测时必须要观察 Linux 系统指标CPU 负载和 CPU 软中断top 观察 Nginx CPU 消耗情况,同时也要观察每个 CPU 核数的情况。...wrk 短连接压测 Nginx 的时候,wrk 端的 Linux 系统参数 net.ipv4.tcp_tw_recycle 要设置为 1,让端口复用,否则会出现一些连接错误。...HTTP:• 长连接(大包小包)• Nginx 打印 access log 日志• Nginx 不打印 access log 日志• 短连接(大包小包)• Nginx 打印 access log 日志...• Nginx 不打印 access log 日志HTTPS:• 长连接(大包小包)• Nginx 打印 access log 日志• Nginx 不打印 access log 日志• 短连接(大包、...小包)• Nginx 打印 access log 日志• Nginx 不打印 access log 日志Throughput:• 采用长连接、特大包的场景来测吞吐量补充说明:• 小包:返回 0KB 数据

2.1K31
您找到你想要的搜索结果了吗?
是的
没有找到

如何在openstack环境下实现高性能的网络服务

第一部分 关于openstack中VNF网络性能的一些思考和思路 先来介绍一下背景,目前openstack社区版本的一些网络服务如routing,fip,snat,fw,V**,lb,数据平面都是linux...network stack来实现的,linux network stack的性能其实不是很好,尤其是对小包的处理。...✔Kernel used is Linux3.13.0-53-generic . 第一个实验是测试IVSHMEM的pps,我们使用dpdk-pktgen来产生报文,基本上可以打出线速的报文。...Q&A Q1:Ovs 2.4快要release A:ovs 2.4应该是8月24日就release了 Q2:正常大包的开销低。你这个测试小包性能高,有问题。...A:前面那个单位是pps,是报文的个数,大包到后面就已经到线速了,没法再高了 Q3:1500是0.8,64是6。那个大那个小?

1.5K60

利用空口抓包分析Wi-Fi问题

然而,许多嵌入式设备上运行的可能不是Linux系统,而是一些实时操作系统(RTOS),甚至根本就没有操作系统。而和设备通信的对端也不一定能运行tcpdump或者wireshark等抓包工具。...在Linux上可以用aircrack。下面简单介绍Ubuntu16.04上的操作方法: 确认网卡是否支持monitor模式,输入iw list命令,如果输出中有monitor说明支持。...而设备和OPPO R11交互时,则是一个1420字节的大包和一个40字节的小包交替出现。 ? 从上面报文中的TCP握手阶段可以看出,OPPO R11(192.168.42.2)的MSS是1420。...注:正常情况下,如果没有开启TCP_NODELAY选项,Nagle算法会在一定程度上将小包聚合成大包的。但是该设备使用的协议栈并无此功能。 2.

9.5K42

利用空口抓包分析Wi-Fi问题

然而,许多嵌入式设备上运行的可能不是Linux系统,而是一些实时操作系统(RTOS),甚至根本就没有操作系统。而和设备通信的对端也不一定能运行tcpdump或者wireshark等抓包工具。...在Linux上可以用aircrack。下面简单介绍Ubuntu16.04上的操作方法: 确认网卡是否支持monitor模式,输入iw list命令,如果输出中有monitor说明支持。...如下图所示,设备和Xiaomi 5X交互时,TCP数据包载荷都是1460字节: 而设备和OPPO R11交互时,则是一个1420字节的大包和一个40字节的小包交替出现。...注:正常情况下,如果没有开启TCP_NODELAY选项,Nagle算法会在一定程度上将小包聚合成大包的。但是该设备使用的协议栈并无此功能。 2.

1.2K20

OpenStack网络服务数据平面加速

第一部分 关于openstack中VNF网络性能的一些思考和思路 先来介绍一下背景,目前openstack社区版本的一些网络服务如routing,fip,snat,fw,V**,lb,数据平面都是linux...network stack来实现的,linux network stack的性能其实不是很好,尤其是对小包的处理。...如果我们看pps的话,通常一个core可以支持0.2M~0.5M packet per second,而如果需要在10g网卡上实现64byte小包的线速转发,需要14.88Mpps的处理能力,所以这里还是有很大的提升空间...----------------------------- 郭瑞景 Q1:Ovs 2.4快要release A:ovs 2.4应该是8月24日就release了 HongLiang Q2:正常大包的开销低...你这个测试小包性能高,有问题。 A:前面那个单位是pps,是报文的个数,大包到后面就已经到线速了,没法再高了 Q3:1500是0.8,64是6。那个大那个小?

3.2K60

Nginx 实战系列之三:Nginx TCP backlog 分析优化和性能相关经验汇总

tcp_max_syn_backlogNginx 在线上运行中的一些性能相关经验汇总• Nginx 本身的参数优化,大部分人都能做出一些优化处理;但是仅仅依靠 Nginx 本身的参数优化还无法达到我们的诉求;还必须要对 Linux...• 实战中出现问题更多的,是 Linux 系统层面的,尤其是 软中断和 nf_conntrack。...可以大大减少 CPU 的开销,没有加速卡,Nginx 机器的 CPU 是扛不住的,如果大量增加 Nginx 机器,又浪费成本,因此,可以增加加速卡、减少 Nginx 机器来提高外网代理层的性能• 要关注大包...、小包的不同处理情况,对于小包,CPU 消耗会更多,因为软中断问题、解包头、校验包数据等层面的问题• 短连接的场景下,CPU 的 si 更容易达到性能瓶颈• 目前常规物理机机器,32 核 or 40 核的

1.5K31

TCP三次握手、糊涂窗口、粘包问题

因为在协议层中对数据是层层封装的过程,因此对于数据来说有大量的协议头,传输开销过大;或接收端在缓存区接受数据过慢; 解决方法: 发送端使用Nagle算法,当发送包长度小于MSS大小时会等待一会,发送条件是: 直到所有发送的小包都有...回复且未设置TCP_CORK时; 直到有FIN字段时; 直到数据长度达到MSS时; 直到等待超时(一般200ms); 设置TCP_NODELAY且没有设置TCP_CORK时;(就是不使用优化算法啦) (当小包的...ACK字段接收较快时算法的作用不大) 发送端使用CORK算法,会将小包拼接成大包,是协议头在协议报文的比重减小,发送条件是: 拼接的报文大于MTU或超时; 没有设置TCP_CORK并设置TCP_NODELAY...时;(就是不使用优化算法啦) (当小包的传输时间间隔不短时影响实时性,因为都要等待超时传输) 接收端使用Clark解决,只要有数据到达就确认,但宣布窗口大小为0,直到缓存空间够容纳一个MSS或缓存空间一半已空

18820

Nginx 参数 tcp_nodelay 详解

一、知识准备 在nginx优化中有个经常需要设置的参数,tcp_nodelay 该参数最核心的功能,就是把小包组成成大包,提高带宽利用率也就是著名的nagle算法 tcp协议中,有一个现象:应用层数据可能很低...在发出去的数据还未被确认之前,或者说还没有收到对端的ack之前,新生成的小包是不允许被发送的,必须要凑满一个MSS或者等到收到确认后再发送,直至超时 二、环境准备 组件 版本 OS Ubuntu...无论怎么测试,平均延时总是在40ms左右 我们来看下抓包信息,使用wireshark打开 在大量的数据包中,我们先处理一下数据包,随便选取一个syn,选取与该syn对应的tcp流 选取一个片段来分析 ● 在Linux...nagle算法是需要等到对端ack来临,或者凑满一个mss之后才发送数据包;而延迟确认针对的是ack,ack会等待“顺风车”,如果有,就乘坐顺风车发送,否则等待超时之后单独发送 ● 本文中延迟确认是Linux...在高延时、数据量大的通信场景中应该会有不错的效果     (2)tcp_nodelay on,会增加小包的数量,但是可以提高响应速度。在及时性高的通信场景中应该会有不错的效果

4.6K30

字节跳动开源 Shmipc:基于共享内存的高性能 IPC

Linux 下,可做选择的比较多,TCP loopback、unix domain socket、event fd 等。...因此在共享内存中构造了一个 IO 队列的来完成批量收割 IO,使其在小包 IO 密集场景也能显现收益。核心思想是:当一个进程把请求写入 IO 队列后,会给另外一个进程发通知来处理。...可以看到在小包场景下,Shmipc 相对于 unix domain socket 也能获得一些收益,并且随着包大小越大性能越好。...但在大包和 IO 密集型场景均能显现出显著收益。 采坑记录 在字节实际落地的过程中我们也踩了一些坑,导致一些线上事故,比较具有参考价值。 共享内存泄漏。...我们曾在某业务上发生串包事故,出现的原因是因为大包导致共享内存耗尽,fallback 到常规路径的过程中设计存在缺陷,小概率出现串包。

1.1K20
领券