aiohttp 线程缓慢

2024-06-19

我复制了代码如何在线程中运行 aiohttp 服务器? https://stackoverflow.com/questions/51610074/how-to-run-an-aiohttp-server-in-a-thread。它运行良好。所以我增加了一秒钟的睡眠。当我同时发起 10 个请求时。平均响应时间为 9 秒。这是为什么?所有请求不是都会在 1 秒多一点的时间内返回吗?

import asyncio
import threading
from aiohttp import web
import time

loop = asyncio.get_event_loop()


def say_hello(request):
    time.sleep(1)
    return web.Response(text='Hello, world')


app = web.Application(debug=True)
app.add_routes([web.get('/', say_hello)])

handler = app.make_handler()
server = loop.create_server(handler, host='127.0.0.1', port=8080)


def aiohttp_server():
    loop.run_until_complete(server)
    loop.run_forever()


t = threading.Thread(target=aiohttp_server)
t.start()

请改用 asyncio.sleep。您的设置正在运行 coros,该 coros 在屈服于事件循环之前会硬休眠 1 秒。因此,如果你收集了一堆,你必须为每个收集连续等待 1 秒钟。

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

aiohttp 线程缓慢 的相关文章

随机推荐

  • 如何在 dataTable.js 中转置行和列

    我想在行而不是列中显示我的数据 转置 你可以在这里看到我的例子 var dataSet Tiger Nixon System Architect Edinburgh 5421 2011 04 25 320 800 Garrett Winte
  • 隐藏 CRM 2011 中使用 SSRS 2008 创建的报表的工具栏

    我已经在 SSRS 2008 中创建了报告并将其附加到仪表板 该报告显示良好 除了大约 15 20 的空间被 SSRS 菜单工具栏占用 该工具栏具有打印 缩放等选项 有没有办法最小化该工具栏 我还有一个可以隐藏的参数栏 但默认情况下它不会保
  • Java 中旅行商问题的暴力算法

    我正在学校的数学课上做一个项目 我选择做旅行商问题 这是我一直想进行更多研究的问题 但是 我的暴力求解算法遇到了问题 请前往底部更新查看最新版本代码 如果您知道旅行推销员问题是什么 请跳过本段 尽可能概括地说 TSP 是这样的 您是一名推销
  • CSS 变换源不能与 translate() 一起使用

    我想将 div 从中心点移开 但似乎translate 不关心变换原点是什么 并使用元素的左上角来移动它 这是一个测试来证实这一点 div class items div class item 1 style width 100px hei
  • 在声明使对象和类未定义之前导出它们

    我尝试重复以下示例Mozilla 黑客 https hacks mozilla org 2015 08 es6 in depth modules 导出列表字幕 export js export detectCats Kittydar fun
  • 将 UserControl 转换为特定类型的用户控件

    有没有办法将用户控件转换为特定的用户控件 以便我可以访问它的公共属性 基本上 我正在遍历占位符的控件集合 并尝试访问用户控件的公共属性 foreach UserControl uc in plhMediaBuys Controls uc P
  • 如何根据条件表达式从 pandas DataFrame 中删除行[重复]

    这个问题在这里已经有答案了 我有一个 pandas DataFrame 我想从中删除特定列中字符串长度大于 2 的行 我希望能够做到这一点 每这个答案 https stackoverflow com questions 11881165 s
  • 如何使用 c++11 CAS 实现 ABA 计数器?

    我正在基于此实现一个无锁队列算法 http www cs rochester edu research synchronization pseudocode queues html 它使用计数器来解决 ABA 问题 但我不知道如何用c 11
  • 如何从我的班级访问活动 UI?

    我有一个活动创建我的类的对象实例 file MyActivity java public class MyActivity extends Activity TextView myView TextView findViewById R i
  • Sinon 存根抛出“TypeError:无法重新定义属性”

    我正在使用 NPM 包Jose https github com panva jose 版本 v1 28 0 在我的一个 NodeJS 应用程序中 最近我的更新机器人尝试将其更新到下一个主要版本 2 0 2 可悲的是我的单元测试Sinon
  • 非泛型类型 Type 不需要类型参数

    我正在创建一个简单的测试类型提供程序 我想提供一个字符串 并返回一个类型名称等于所提供的字符串的类型 但结果不行 说BasicProvider是非泛型类型 Error 非泛型类型 SimpleStringProvider BasicProv
  • 服务器作为 WebRTC 数据通道对等点

    目前是否有解决方案可以让您的服务器充当 WebRTC 连接的对等端 我对 WebRTC 感兴趣的原因不是它的点对点部分 而是因为它使您能够使用 UDP 您可以让玩家参与像 雷神之锤 这样的快节奏游戏 而无需任何插件 看来本质上是同一个问题之
  • 从 Rails 3.1.3 升级到 Rails 3.2.1。资产错误

    我尝试将应用程序从 Rails 3 1 3 升级到 Rails 3 2 1 但资产出现问题 我有这样的错误 ActionController RoutingError No route matches GET assets logos op
  • JQuery 事件处理程序未触发

    请看我的代码 Html table tr td valign top style padding top 10px Body br br a href expand a td td td tr table
  • Pyinstaller:如何包含 importlib_resources 使用的包中的资源

    我有以下项目结构 package1 init py some py package2 init py some py static data init py file1 txt file2 txt my script py my scrip
  • 占据花车的地板

    我发现了两种在 Python 中占据发言权的方法 3 1415 1 and import math math floor 3 1415 第一种方法的问题是它返回一个浮点数 即3 0 第二种方法感觉很笨拙而且太长 在 Python 中是否有替
  • WCF 5.0 和 oData 3.0 API 不适用于 Azure 表存储

    在我迁移 WCF5 0 应用程序以与 azure 集成后 我无法将 oData 3 api 与 azure 表存储一起使用 我收到这个错误 定义了类型 System Data Services Client DataServiceRespo
  • JavaScript WebSocket.send 方法会阻塞吗?

    如果我要发送大量Blob or ArrayBuffer通过 JavaScriptWebSocket通过其send方法 是否send方法调用会阻塞 直到发送数据为止 还是会复制数据以异步发送 以便调用可以立即返回 一个相关的 未回答的 问题是
  • Qt 相当于 .NET 数据绑定吗?

    Qt 中是否有相当于 NET 数据绑定的功能 我想使用引用数据库中特定实体的 QString 填充一些组合框和其他小部件 但是 如果我可以将数据绑定到这些字符串 而不是基于新的组合框选择再次查询数据库 或者基于构建我自己的将使用 QStri
  • aiohttp 线程缓慢

    我复制了代码如何在线程中运行 aiohttp 服务器 https stackoverflow com questions 51610074 how to run an aiohttp server in a thread 它运行良好 所以我