varnish上线3天,目前运行良好。使用siege进行压测,对比有无varnish前后的区别

选择 http://site/resources/p_w_picpaths/imglist.jpg 对一个URL进行请求

后端是一台windows的IIS服务器

在没有上varnish之前

100个并发循环600次压测结果

** SIEGE 2.72
** Preparing 100 concurrent users for battle.
The server is now under siege..      done.Transactions:            60000 hits
Availability:             100.00 %
Elapsed time:              13.49 secs
Data transferred:         526.14 MB
Response time:              0.02 secs
Transaction rate:        4447.74 trans/sec
Throughput:            39.00 MB/sec
Concurrency:               97.43
Successful transactions:       60000
Failed transactions:               0
Longest transaction:            3.02
Shortest transaction:           0.00

此时后端的服务器CPU 占了80%以上

在上了varnish之后

** SIEGE 2.72
** Preparing 100 concurrent users for battle.
The server is now under siege..      done.Transactions:            60000 hits
Availability:             100.00 %
Elapsed time:              12.13 secs
Data transferred:         526.14 MB
Response time:              0.02 secs
Transaction rate:        4946.41 trans/sec
Throughput:            43.38 MB/sec
Concurrency:               77.76
Successful transactions:       60000
Failed transactions:               0
Longest transaction:            3.04
Shortest transaction:           0.00

可以看到,总共执行时间减少的并不明显。但是后端CPU基本处于0状态,无任何压力。而且varnish服务器load值也基本处于0

在访问量并不大的情况下,上不上varnish并没有太大的优势体现出来。

而在大量的请求的时候,优势就很明显了

如果压测的时候出现大量的“[error] socket: 2001824064 address is unavailable.: Cannot assign requested address”

客户端频繁的连服务器,由于每次连接都在很短的时间内结束,导致很多的TIME_WAIT,以至于用光了可用的端口号,所以新的连接没办法绑定端口,所以 要改客户端机器的配置
在sysctl.conf里加:
net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;
net.ipv4.tcp_timestamps=1 开启对于TCP时间戳的支持,若该项设置为0,则下面一项设置
不起作用
net.ipv4.tcp_tw_recycle=1 表示开启TCP连接中TIME-WAIT sockets的快速回收

转载于:https://blog.51cto.com/longmu/943009

使用siege对varnish进行压测对比相关推荐

  1. ffmpeg硬解码与软解码的压测对比

    文章目录 ffmpeg硬解码与软解码的压测 一.基本知识 二.压测实验 1. 实验条件及工具说明 2. 压测脚本 3. 实验数据结果 ffmpeg硬解码与软解码的压测 一.基本知识 本文基于intel ...

  2. CoolHash数据库引擎压测对比报告

    Coolhash 当前性能指标:读写吞吐量超过百万,千万级别查询1秒完成,连续48小时打满CPU强压力运行稳定.redis官方公布读写性能在10万 tps,leveldb官方公布写性能在40万tps, ...

  3. kong笔记——kong、nginx性能压测对比

    简述 kong笔记 目录导航 前面介绍了kong的基本使用以及相关原理,那么接下来,我们需要对kong的性能做一个简单的了解. 性能压测 测试环境 机器类别及IP地址 硬件配置 操作系统 软件配置 网 ...

  4. siege 用户登录_压测工具siege

    siege这个开源的压力测试工具,可以方便开发者快速测试网站或API接口的并发情况.网站性能情况 Siege是什么 Siege是一个开源回归测试和基准测试实用程序.它可以使用用户定义数量的模拟用户对单 ...

  5. 压测|关于PHP7和5.6的压测对比

    机器配置 $ cat /proc/cpuinfo $ cat /proc/versionLinux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys ...

  6. golang连接postgresql too many client_MySQL和PostgreSQL压测性能对比

    阅读使人充实,讨论使人敏捷,写作使人精确. >>> 压测业务场景文章属于互联网社区动态类场景核心功能压测案例.至于题目涉及的MySQL和PostgreSQL之间的关系,主要为业务选型 ...

  7. Nacos 2.0 升级前后性能对比压测

    简介:Nacos 2.0 通过升级通信协议和框架.数据模型的方式将性能提升了约 10 倍,解决继 Nacos 1.0 发布逐步暴露的性能问题.本文通过压测 Nacos 1.0,Nacos 1.0 升级 ...

  8. 性能压测工具选型对比

    本文是<Performance Test Together>(简称PTT)系列专题分享的第二期,该专题将从性能压测的设计.实现.执行.监控.问题定位和分析.应用场景等多个纬度对性能压测的全 ...

  9. 大厂钟爱的全链路压测有什么意义?四种压测方案详细对比分析

    全链路压测? 基于实际的生产业务场景和系统环境,模拟海量的用户请求和数据,对整个业务链路进行各种场景的测试验证,持续发现并进行瓶颈调优,保障系统稳定性的一个技术工程. 针对业务场景越发复杂化.海量数据 ...

最新文章

  1. CSS的overflow属性:显示 隐藏 滚动显示 自动显示 继承
  2. 开源当自强:我们不是“便宜货”
  3. Android中XML数据解析
  4. eclipse中追加html模板,Eclipse创建自定义HTML5,JSP模板
  5. 传输层 可靠传输 连续ARQ协议和滑动窗口协议
  6. oracle根据身份证计算年龄的方法
  7. 博客中常用的Emoji表情整理,欢迎自取
  8. linux drwxr-xr-x 什么意思
  9. 智能管家---4.Log封装
  10. 独立性检验的基本思想和初步应用
  11. Python—获取电脑的锁屏壁纸
  12. MySQL中强大的mysqladmin
  13. Codeforces Problemset
  14. 怎样批量查询中通快运物流并分析出提前签收的单号
  15. Word2010中自动尾注添加参考文献
  16. 信息学奥林匹克,精品大学AP课程
  17. 我的世界服务器高度无限吗,我的世界:玩家突破Y=256格高度限制,难道是假截图?毫无破绽...
  18. 学习方法:十步学习法
  19. 【博客573】linux内核层丢包排查方法汇总
  20. IBM磁盘阵列配置教程

热门文章

  1. android游戏渠道支付,Android渠道支付隐患及推荐解决方案
  2. linux命令之awk终极系列
  3. STM32这类的芯片设计有多组VSS和VDD原因
  4. 华为宣布:免费培养K8s和微服务开发者
  5. 《Go 语言程序设计》读书笔记 (三) 方法
  6. 从零搭建angular环境和初项目
  7. CentOS 7 各个版本的区别
  8. RTSP协议分析(二)
  9. (二)golang数组和切片
  10. cookie中转注入