问题标签 [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 - Python中的字节数组
如何在 Python 中表示一个字节数组(比如在 Java 中使用 byte[])?我需要用 gevent 通过网络发送它。
python - Gevent Pywsgi 服务器 - 多处理?
以下代码(取自此处:https : //bitbucket.org/denis/gevent/src/6c710e8ae58b/examples/wsgiserver_ssl.py)实现了一个极快的由greenlet驱动的wsgi网络服务器:
但是,这只在一个核心上运行。您将如何修改它以利用多个进程?不是在寻找涉及 gunicorn 的答案,而是在寻找更简单的东西。
暗示
这是一个使用 gevent 和多处理的代码示例,但我仍然无法弄清楚如何使用 WSGI 来实现它(取自https://gist.github.com/1169975):
python - 使用 Gevent / Tornado 和 Flask 的 Socket.io 处理程序
任何人都可以向我展示如何使用 gevent 和烧瓶处理通用 socket.io 连接(取决于客户端浏览器,可能是 websockets 或 xhr-longpolling 等)的示例,或者使用龙卷风作为异步服务器的烧瓶谢谢你
python - multiprocessing.Queue 是否与 gevent 一起使用?
有人知道这段代码有什么问题吗?它只是永远“加载”。没有输出。“站点”是几十个字符串的列表。
python - 如何在 Gevent 中使用日志记录?
我有一个像这样的代码:
但是当我运行它时,我的日志没有显示在 shell 中。有任何想法吗?有没有更好的方法在基于 gevent 的协程中进行日志记录?
python - 如何在 Mac OS X Lion 上安装 Python 库“gevent”
Python librarygevent
版本 0.13.6(PyPI 上的当前版本)不会pip install
在 OS X Lion、Python 2.7(可能还有其他版本)上运行。它在 Snow Leopard 上运行良好。
我怎样才能安装这个库?
如果可以使用pip install
,而不是手动或自定义过程来完成,则可以加分,因为这样它将与自动构建很好地配合。
这是我的pip install
输出:
python - psycopg2 + pgbouncer。带有 gevent 错误的异步模式
我有一个应用程序 psycopg2 + pgbouncer + gevent。异步应用,即一个进程服务多个请求。对数据库的异步访问出现在最新版本的 psycopg2 中,如果不是 2.2 的话。但只是在这个版本中引入了与 pgbouncer 有很多断开连接的错误。在 pgbouncer 日志中有条目:
也许有一些方法可以配置 pgbouncer,以避免有关不干净服务器的消息? 关于 bug 的信息,比如有一个补丁可以治愈某些东西。来自 ubuntu 存储库的所有软件包,在生产机器上应用补丁 - 这不是一个好的选择。我的配置 pgboucner:
python - 带有 redis pubsub 的 Django/gevent socket.IO。我把东西放在哪里?
我有一个孤立的 python 脚本,它简单地从 Twitter 的流 API 捕获数据,然后在收到每条消息时,使用它发布到频道“tweets”的 redis pubsub。这是那个脚本:
我的服务器端 socket.io 实现是使用 django-socketio(基于 gevent-socketio)https://github.com/stephenmcd/django-socketio完成的,它只提供了一些辅助装饰器以及一个 broadcast_channel 方法。因为它是在 django 中完成的,所以我只是简单地将这段代码放在 views.py 中,以便它们被导入。我的views.py代码:
客户端 socket.io JavaScript 简单地连接并订阅频道“livestream”,并将任何接收到的消息捕获到该频道:
这段代码的明显问题是,每次向页面打开新用户或浏览器窗口时,都会产生一个新的 _listen 方法,并为每个用户订阅和广播推文,从而导致客户端收到重复的消息。我的问题是,将 _listen 方法放在哪里合适,以便它只创建一次,而不管客户端的数量如何?另外,请记住,broadcast_channel 方法是套接字实例的方法。
python - 如何通过gevent的事件实现comet
有一个关于如何使用 gevent + flask 实现彗星的演示。
它使用 gevent 的事件类。如果任何人发布消息,聊天室中的任何人都会收到该消息。
如果我只是想让某人收到消息怎么办?我应该使用 gevent.event.AsyncResult 吗?如果是这样,该怎么做?
python - 如何使用带有 gevent 的 redis 或 Python 中的线程来为多个任务构建我的应用程序
我有一个通过 redis pubsub 实时发送金融报价数据的过程。现在我希望我的 Python 应用程序处理输入数据 (json) 以进行移动平均等实例计算。我想通过 redis 将结果发送回其他任务(根据第一个任务的结果进行进一步计算)。此外,我想每天或每秒定期触发一些任务。由于这个复杂且无法预见的结构问题,我偶然发现了 gevent、Celery 或只是 Threads 等解决方案。
但我想知道的是,我有哪些选择以正确的方式做到这一点?如何以最有效的方式通过 Worker/Task 构建我的 redis pubsub?因此,欢迎提出建议,包括库(如果您使用过任何提到的请分享您的经验)、技术(Python 的结构最佳实践)、如何利用 redis 的 pubsub 以最好的方式完成工作。