问题标签 [eventlet]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 我可以在 Python 中通过 eventlet.backdoor 调用函数或更改变量吗?
我写了这个最小的代码来解释我的情况:
执行后,我通过 telnet 连接,导入我的模块并调用 turn_off_printing()。但它不起作用。我犯了错误,还是不可能?
python - Python 消耗 99% 的 CPU 运行 eventlet
我已经发布到 python 和 eventlet 邮件列表,所以如果我看起来不耐烦,我深表歉意。
我在小型(非微型)保留的 ubuntu 11.10 aws 实例上运行 eventlet 0.9.16。
我有一个套接字服务器,它类似于 eventlet 文档中示例中的 echo 服务器。当我第一次开始运行代码时,一切似乎都很好,但我注意到在 10 或 15 小时后,cpu 使用率从大约 1% 变为 99+%。那时我无法与套接字服务器建立进一步的连接。
这是我正在运行的代码:
L.LOGG 方法只是将提供的参数记录到 mysql 表中。
我在这样的线程中运行socket_listener:
从我最初的谷歌搜索中,我认为这个问题可能类似于https://lists.secondlife.com/pipermail/eventletdev/2008-October/000140.html报告的错误,但我使用的是新版本的 eventlet不可能吗?
python - 在单个 python 进程中混合绿色线程和本机线程是否安全?
首先,将eventlet或gevent等绿色线程与标准库中的python原生线程(即Lib/threading.py)混合在同一个python进程中是否安全?
其次,如果它是安全的,这是一个坏主意吗?
python - 芹菜 + eventlet = 100% CPU 使用率
我们正在使用 celery 从不同的旅行社获取航班数据,每个请求大约需要 20-30 秒(大多数旅行社需要请求序列 - 授权、发送请求、轮询结果)。
正常的 celery 任务如下所示:
此任务在并发 300 的 eventlet 池中运行
prefetch_multiplier = 1
,broker_limit = 300
当从队列中获取约 100-200 个任务时 - CPU 使用率上升到 100%(使用整个 CPU 核心)并且从队列中获取任务时执行延迟。
您能否指出可能的问题 - 阻塞操作(eventletALARM DETECTOR
没有例外),错误的架构或其他任何问题。
python - 检测小事件环境?
我有一些模块有时是从 eventlet 环境中导入的,有时是从常规 python 环境中导入的。我想检测到这一点,以便有条件地调用monkey_patch
和debug.hub_blocking_detection
。
一段python代码是否有可靠的方法来发现它是否在eventlet环境中运行?
python - 带有 zeromq PUSH/PULL 的 Eventlet 未按预期工作
我正在尝试使用 eventlet 和 zeromq PUSH/PULL 套接字创建一个侦听器/发送器对。
这是代码:
我得到输出:
而不是预期的:
我错过了什么?
python - Eventlet/通用异步 I/O 任务粒度
我正在开发一个 Web 后端/API 提供程序,它从 3rd 方 Web API 获取实时数据,将其放入 MySQL 数据库并通过 HTTP/JSON API 使其可用。
我正在为 API 提供烧瓶并使用 SQLAlchemy Core 处理数据库。
对于实时数据抓取部分,我有通过发送请求、将返回的 xml 解析为 Python dict 并返回它来包装 3rd 方 API 的函数。我们将调用这些 API 包装器。
然后我在其他方法中调用这些函数,这些方法获取相应的数据,根据需要进行任何处理(如时区转换等)并将其放入数据库中。我们将调用这些处理器。
我一直在阅读有关异步 I/O 和 eventlet 的具体内容,印象非常深刻。
我将把它合并到我的数据抓取代码中,但我首先有一些问题:
猴子修补所有东西对我来说安全吗?考虑到我有烧瓶、SQLAlchemy 和一堆其他库,猴子修补有什么缺点(假设没有后期绑定)?
我应该将任务划分为什么粒度?我正在考虑创建一个定期生成处理器的池。然后,一旦处理器到达它调用 API 包装器的部分,API 包装器将启动一个 GreenPile 以使用 eventlet.green.urllib2 获取实际的 HTTP 数据。这是一个好方法吗?
- 超时 - 我想确保没有绿线挂起。将每个 greenthread 的 eventlet.Timeout 设置为 10-15 秒是一个好方法吗?
仅供参考,我有大约 10 组不同的实时数据,并且每 5-10 秒产生一个处理器。
谢谢!
javascript - Javascript 同步接口的异步操作
所以我最近听到了很多关于 node.js 的消息。支持者似乎吹捧它是基督的第二次降临。这激起了我的兴趣,我决定阅读它。
我遇到了多个具有基准数字的来源,它显然在处理大量并发请求方面做得很好。但是编写代码的“回调”方式对我来说感觉非常“不自然”。一点点研究让我找到了 Eventlet,它让我可以在编写看起来非常像同步的代码时执行异步操作(因此让我更有效率)。
但是 Node.js 似乎比 Eventlet 强大得多(http://codescience.wordpress.com/2011/09/05/non-blocking-io-node-js-and-pythons-eventlet)。我假设这是因为 V8 JS 引擎。是否有 Java/Javascript 产品允许我在编写同步代码的同时执行异步操作,从而为我提供两全其美的优势 - 开发人员的生产力和 JVM/V8 的性能?
python - 错误:安装 eventlet 时命令“gcc”失败,退出状态为 1
我想eventlet
在我的系统上安装,以便让“群”进行软件部署。但终端显示 gcc 错误:
为什么Python.h
找不到?
python - Psycopg2 - Eventlet 连接挂起
我有一个程序可以保持与 postgresql 服务器的持久连接。假设由于网络问题导致连接被阻塞(可以通过关闭网络接口来模拟),使用 eventlet 调用查询的进程卡住了。这也阻止了其他小事件的执行。附加 gdb 表明进程在 psycopg2 C 代码中被阻止。我试过postgresql TCP keepalives。但是,如果在连接丢失后立即调用查询,这也会失败。
有什么办法可以防止 eventlet 进入这种状态?有什么办法可以让 eventlet 脱离这种状态。
广发银行