问题标签 [gevent]
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 - 多个进程共享一个监听套接字:当一个新进程进入时,为什么旧进程会停止?
这些代码是我的代理程序的Server部分,它的作用是创建socket和fork四个进程一一接受。
在我的程序中,我使用 gevent 模型来调度我的所有函数,并且在我将其更改为多个进程之前,我的程序没问题。但是现在当我使用第二个进程时,第一个进程停止运行,我没有发现哪里出了问题,也许是“接受”功能或者我的事件是停止调度。
它已经困扰我两天了,希望有人能帮助我。
顺便说一句,我的英语很差,我尽力解释一下,希望你能理解。
wsgi - 使用 Gevent 和 WSGI 阻止调用
我刚刚开始使用协程并阅读了 gevent 和 greenlets。对于测试,我通过 gevents pywsgi 模块提供了此代码:
我期望结果是每个请求在显示文本之前都会延迟 5 秒。但是,发生的情况是,每个请求都会在调用 gevent.sleep() 时排队,如果在第一个请求之后立即启动第二个请求,则它会花费近 10 秒。
serve_forever 函数不是为每个请求生成新的 greenlets 吗?
python - 在 Python 中延迟处理
我正在尝试以非阻塞方式编写事件,以免减慢我们现有的任何进程。似乎可用的两个选项是:
是否有其他选择。有人有这方面的经验吗?
背景:我们计划将事件写入 Amazon 的CloudWatch服务,我担心执行 PUT 请求的延迟。如果这改变了答案,我实际上并不担心丢失一些 PUT(我们正在编写事件以发出警报,无论如何它们都会在一周后被清除)。
python - puka 会与 gevent 或 eventlet 一起工作吗?
我正在阅读更新的 Python AMQP 库 Puka(不要与 Pika 混淆),并且想知道它处理事件循环的方式是否与 gevent 或 eventlet 兼容。根据我有限的知识,您似乎可以使用 gevent/eventlet 自动修补它。
谢谢!
来源:http: //github.com/majek/puka
文档: http: //majek.github.com/puka/puka.html
python - pymongo + gevent:给我一个香蕉,然后给我monkey_patch?
Quickie 这里需要比我现在更多的 pymongo 领域专业知识:
pymongo 驱动程序的“正确”部分是否是用 python 编写的,我可以调用 gevent monkey_patch() 并成功改变 pymongo 在 gevent“异步”greenlets 中的 r/w 阻塞行为?
如果这需要在 gevent 和 pymongo 上做更多的工作——但这是可行的——只要我能在 irc 上获得一些指导,我就非常愿意投入时间。
谢谢!
注意:在小规模的 mongo 写入不是一个大问题,因为我们只是在解除阻塞之前排队写入“请求”。但是与 fiorix 谈论他扭曲的异步 mongo 驱动程序(https://github.com/fiorix/mongo-async-python-driver),即使是 mongo 的快速写入(请求)也可能导致大规模异步应用程序出现问题。(当然,非阻塞读取可能从一开始就引起问题!)
python - 为什么在为多个进程共享侦听套接字时新进程条目然后旧进程的事件停止运行?
问题发生在我的代理程序中,考虑到 G10K,我在我的程序中使用 gevent,我使用低级 gevent.core 来运行我的所有功能。
在我将程序更改为多个进程之前。一切都好。但是当我改变它时,问题就出现了。
我发现问题是当进程 NO.2接受套接字时,进程 NO.1 的事件将停止调度。如果我在我的事件中添加一个 sleep(0.1) ,那么就会有一个惊喜。但是我降低了睡眠时间,问题又出现了。
这个问题困扰了我一个星期,仍然与此无关,有人可以帮助我吗?
我使用这样的事件:
zeromq - 在 gevent 的 fd 上监听 POLLIN
我想将 ZeroMQ 连接到 gevent 循环。使用 ZeroMQ API,我可以获取套接字的 fd。如何在不阻塞其他 greenlet 的情况下在 greenlet 中查看此套接字的 POLLIN 事件?
python - 使用 `gevent.event.Event` 的多听众通知的更好模式?
我发现大多数时候当我使用 时gevent.event.Event
,我的代码看起来像这样:
听众看起来像:
这是“正确的做法”吗?或者有没有更好的方法来通知重复事件的多个侦听器?
python - 带有 gevent-websocket 的策略服务器
正在尝试使 gevent-websocket 正常工作,但它没有连接到我的策略服务器以获取 flash 规范。我的 policy.py 如下:
然而,使用 websocket 我得到:
django - 如何运行 nginx、gevent、virtualenv 和 django
我找不到关于如何在 virtualenv 中运行 Nginx 作为反向代理、gevent 作为 http 服务器和 django 的好教程。
我找到了类似的教程,但是它适用于 uWSGI 而不是 gevent。任何有关如何使用 gevent 进行这项工作的指示将不胜感激。
谢谢