在负载平衡的 Tornado 站点上使用 apache 基准测试获取失败的请求,但没有记录

2024-04-11

也许这是一个关于 ab 的问题,而不是关于 Tornado 的问题,但有些事情没有意义。

我这样运行基准测试:

$ ab -n 100 http://localdomainname/ # 2 tornados being 1 nginx
 ...
Concurrency Level:      1
Time taken for tests:   0.162 seconds
Complete requests:      100
Failed requests:        17
   (Connect: 0, Receive: 0, Length: 17, Exceptions: 0)
Write errors:           0

因此,根据 100 个请求中有 17 个失败了。

在运行基准测试之前,我重置日志文件并再次查看它们:

$ wc -l /tmp/gkc.access.log 
100 /tmp/gkc.access.log
$ cat /tmp/gkc.access.log | grep ' 200 ' | wc -l
100

所以,根据 Nginx 的说法,没有请求失败!为什么 ab 说 100 中的 17 个失败了?

(顺便说一句,100 中的 17 只是一个例子。它会上升和下降,但从来不会像我期望的那样为 0)

UPDATE

在不接触 Tornado+Nginx 设置的情况下使用 httperf 进行测试后,我收到 0 个失败的请求。


您得到“长度”失败的请求,这并不意味着响应代码不是 200。它只是意味着跨请求的响应长度不同(它记住第一个请求的长度)。

这个问题已经在这个问题中详细讨论过:使用 AB 进行负载测试...假失败请求(长度) https://stackoverflow.com/questions/579450/load-testing-with-ab-fake-failed-requests-length

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在负载平衡的 Tornado 站点上使用 apache 基准测试获取失败的请求,但没有记录 的相关文章

  • 如何使用 JMH 按顺序运行基准测试中的方法?

    在我的场景中 基准测试中的方法应该在一个线程中顺序运行并按顺序修改状态 例如 有一个List
  • 为什么方法访问看起来比字段访问更快?

    我正在进行一些测试 以了解使用 getter setter 和直接字段访问之间的速度差异 我编写了一个简单的基准测试应用程序 如下所示 public class FieldTest private int value 0 public vo
  • 使用 Tornado 广播消息

    我有一个发送消息的应用程序 该消息应该广播到每个当前连接的客户端 假设客户数量可能达到数千 如何在不阻塞的情况下实现这个广播逻辑 我认为会阻止的示例代码 clients class Broadcaster tornado websocket
  • Python。龙卷风。非阻塞 xmlrpc 客户端

    基本上我们可以通过以下方式调用 xmlrpc 处理程序 import xmlrpclib s xmlrpclib ServerProxy http remote host rpc print s system listmethods 在to
  • 测量 ASP.NET Core 中异步代码与同步代码的性能

    我正在尝试使用 SQL Server Express 和 EF Core 3 1 3 来衡量 ASP NET Core 3 1 中异步与同步的性能 并且有两个完全相同的函数 除了一个是异步的 一个是同步的 HttpGet search de
  • 如何在 Tornado 中从子进程向 websocket-client 发送消息?

    我有龙卷风服务器 它从 websocket 连接接收消息 我需要将工作人员功能作为单独的进程运行 并且工作人员应该回答客户端 主要思想是在并行模式下工作 像这样的东西 def worker ws message input json loa
  • 为什么第二次 cp 命令更快

    当我执行时cp folder1 folder2 rf 第一次大约需要10分钟 但是当我执行第二个命令时cp folder1 folder3 rf 大约需要 1 分钟 folder1包含大约 100 000 个文件 为什么第二次运行时间会有所
  • 字符串池:“Te”+“st”比“Test”快?

    我正在尝试一些有关字符串池的性能基准 然而 结果并不令人期待 我做了3个静态方法 Perform0 方法 每次都会创建一个新对象 Perform1 方法 字符串文字 Test Perform2 方法 字符串常量表达式 Te st 我的期望是
  • 龙卷风 vs wsgi(带gunicorn)

    I read this http rz scale it pl 2013 01 25 tornado the best web framework html关于龙卷风 另一方面 如果您已经有 WSGI 应用程序并且想要运行它 在速度极快的t
  • 用于分析 .NET 程序函数执行时间的工具

    有哪些工具可用于通过测量函数执行时间并生成图表来可视化调用图中各个点所花费的时间来分析 NET 程序 这会让你付出代价 但是Ants 性能分析器 http www red gate com products ants performance
  • Codeigniter 基准测试,这些 ms 来自哪里?

    我正在对我的网站进行基准测试 class Home extends Controller function Home parent Controller this gt benchmark gt mark Constructor start
  • 如何在Python中使库异步

    在我的工作中 他们 利用 龙卷风 但他们没有异步库 是什么让库变得异步 以便它更适合龙卷风之类的东西 有没有什么好的例子或者我猜你在做什么 enter or exit 这可以表明您没有阻止 我发现很难将一些材料拼凑在一起 如果您的库不是异步
  • 如何在 Tornado 中以最少的阻塞对密码进行哈希处理?

    我在用着PBKDF2 http en wikipedia org wiki PBKDF2 但这同样适用于 BCrypt 通过合理的迭代次数对密码进行哈希处理可以轻松阻塞 0 5 秒 有什么轻量级的方法可以将其从流程中删除 我不愿意仅仅为了这
  • 对于基准测试和压力测试子串搜索算法有哪些好的测试用例?

    我正在尝试评估不同的子字符串搜索 ala strstr 算法和实现 并寻找一些精心设计的针和干草堆字符串 这些字符串将捕获最坏情况的性能和可能的极端情况错误 我想我可以自己解决它们 但我认为有人必须在某个地方收集大量测试用例 一些想法和对自
  • 当非特权用户运行 C/asm 程序时,会对 Linux 造成什么危害?

    我一直在考虑一种场景 让用户 可以是任何人 可能有恶意 提交在 Linux PC 我们称之为基准节点 上运行的代码 目标是为单线程例程创建一种自动化基准测试环境 假设一个网站向代理发布了一些代码 该代理将此代码交给基准节点 而基准节点仅与代
  • 龙卷风网络和线程

    我是 Tornado 和 Python 线程的新手 我想要实现的目标如下 我有一个龙卷风网络服务器 它接受用户的请求 我想在本地存储一些数据 并定期将其作为批量插入写入数据库 import tornado ioloop import tor
  • DateField 未呈现为 type="date"

    class Form Form plan start DateField Plan Start validators Required 这段代码将渲染这个 html
  • 如何在特定时间启动Tornado周期性回调?

    目前在我的 Tornado 应用程序中 我正在使用定期调用回调PeriodicCallback每隔一小时 像这样 import tornado ioloop from tornado ioloop import PeriodicCallba
  • Mongodb 中的读自己写的一致性

    首先 这是Pymongo 文档 http api mongodb org python current examples requests html highlight read 20you 20own 20write 默认情况下 当线程首
  • Python Tornado 中的异常处理

    我正在尝试处理发生的异常AsyncClient fetch这样 from tornado httpclient import AsyncHTTPClient from tornado httpclient import HTTPReques

随机推荐