c++ - 使用 apache2-utils 调用时 boost.asio 服务器响应挂起
问题描述
我正在尝试运行可以在这里找到的基准:gitbub asio benchmark
当我按原样运行此代码时,我可以在 Firefox 中使用 RESTED 客户端获得响应,实际上我可以将手指放在发送按钮上,服务器只会继续发送 hello-world-s。
但是,当我这样做时:
ab -n 1 -v 4 -c 1 http://localhost:8080/
apache工具挂起,特别是:
Benchmarking localhost (be patient)...INFO: GET header ==
--- GET / HTTP/1.0 Host: localhost:8080
User-Agent: ApacheBench/2.3
Accept: */*
--- LOG: header received:
HTTP/1.1 200 OK
Connection: keep-alive
Content-Length: 12
Server: Pure asio bench server
Content-Type: text/plain; charset=utf-8
Hello world!
LOG: Response code = 200
似乎收到了响应,但 apache2-utils 因某种原因挂起,我怀疑响应有问题,但我就是想不通。
有任何想法吗?
PS 应该注意的是,我只向服务器请求了 1 个请求并不重要,如果你等待的时间足够长,apache2-utils 会报告超时,这显然是不正确的,因为 Firefox 得到响应就好了。
解决方案
推荐阅读
- java - 为什么我不能进行多页邮件合并?
- actions-on-google - Google Action - 更改“自由格式文本”的超时
- wordpress - 如何在 Wordpress 中手动绕过这些渲染阻塞资源?
- google-cloud-platform - 如何在 GCP 中更新 DNS 的 NS
- javascript - 检测用户何时关闭以编程方式打开的选项卡
- apache-kafka - 获取 LeaderNotAvailableException
- java - 千分尺在哪里存储数据?
- java - Apache commons VFS 无法解析带有字符串 URI 的文件
- python - 根据值拆分列并创建新的数据框
- discord.js - 如何修复该 quick.db 不会产生负面输出