跳转到主要内容

高度并发的网络库

项目描述

警告

现在强烈不建议使用 eventlet 的新用法!请阅读以下内容。

Eventlet 诞生于大约 18 年前,当时 CPython stdlib 中还没有异步功能。随着时间的推移,eventlet 和 CPython 都得到了发展,但自从几年前的维护活动减少以来,eventlet 和 CPython 实现之间的差距越来越大。

这个差距现在太大了,可能导致您的应用程序中出现意外的副作用和错误。

Eventlet 现在遵循新的维护策略。**只提供稳定性维护和错误修复**。**不接受新功能**,除非与 asyncio 迁移相关。**不鼓励在新项目中使用**。**我们的目标是规划 eventlet 的退役**,并为您提供摆脱 eventlet 的方法。

如果您正在寻找一个用于管理异步网络编程的库,并且尚未使用 eventlet,那么,我们鼓励您使用 CPython stdlib 的官方异步库 asyncio

如果您已经使用 eventlet,我们希望为某些用例启用迁移到 asyncio;请参阅 从 Eventlet 迁移。只接受与迁移解决方案相关的新功能。

如果您对维护目标或迁移有任何疑问,请不要犹豫,提出新问题,我们将很乐意回答。

Eventlet

https://img.shields.io/pypi/v/eventlet https://img.shields.io/github/actions/workflow/status/eventlet/eventlet/test.yaml?branch=master https://codecov.io/gh/eventlet/eventlet/branch/master/graph/badge.svg

Eventlet 是一个用于 Python 的并发网络库,它允许您更改代码的运行方式,而不是编写方式。

它使用 epoll 或 libevent 进行高度可扩展的非阻塞 I/O。协程确保开发者使用类似于线程的阻塞式编程风格,但提供了非阻塞 I/O 的好处。事件调度是隐式的,这意味着您可以从 Python 解释器或作为更大应用程序的一个小部分轻松使用 Eventlet。

使用 Eventlet 很容易入门,将现有应用程序转换为使用它也很容易。首先查看 示例常见设计模式基本 API 原语 列表。

获取 Eventlet

获取 Eventlet 最简单的方法是使用 pip

pip install -U eventlet

一次性安装最新开发版本

pip install -U https://github.com/eventlet/eventlet/archive/master.zip

本地构建文档

构建完整的 HTML 文档集

tox -e docs

构建后的 html 文件可以在 doc/build/html 中找到。

支持的 Python 版本

目前支持 Python 3.7-3.12。

项目详情


发行历史 发布通知 | RSS 源

下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

eventlet-0.37.0.tar.gz (558.6 kB 查看哈希值)

上传时间

构建分布

eventlet-0.37.0-py3-none-any.whl (361.6 kB 查看哈希值)

上传时间 Python 3

支持者