Leviathan:一个简单、超快速的 Python asyncio 事件循环


Leviathan,这是 Zig 中内置的 Python asyncio 的自定义 EventLoop。

Leviathan 的设计目标是:

  • 简单:Python asyncio EventLoop 的轻量级替代品。
  • 超快:基准测试结果超越现有的 EventLoops。
  • 灵活:虽然它仍处于早期开发阶段,但功能齐全,已经可以在 Python 项目中使用。

Leviathan 非常适合:

  • 需要高性能基于 asyncio 的应用程序的开发人员。
  • 对替代 EventLoops 或 Python 性能改进感兴趣的实验者和贡献者。

特点:

  • 超快的速度:得益于 Zig 启用的低级优化。
  • 完全 asyncio 兼容性:默认事件循环的替代品。
  • 高效设计:专注于最大化性能和最小化延迟。
  • 简单:轻松与现有 Python 项目集成。


比较
与 Python 默认的 EventLoop(或 uvloop 等替代品)相比,Leviathan 是用 Zig 编写的,其重点在于:

  1. 简单:简约的代码库,更易于调试和理解。
  2. 速度:初步基准测试显示性能有所提高,但还需要更多的测试。
  3. 现代架构:利用 Zig 的性能和安全特性。

要求

  • Python 3.13+
  • Zig 0.14.x(用于开发或贡献)

安装
要安装 Leviathan,只需执行:
python setup.py install

用法:

from leviathan import Loop
import asyncio

async def main():
    print("Hello from Leviathan!")
    await asyncio.sleep(1)
    print(
"Goodbye from Leviathan!")

loop = Loop()
try:
    loop.run_until_complete(main())
finally:
    loop.close()

Leviathan 的速度和性能非常突出。