
benoitc/erlang-python
🏗️ 框架benoitc
通过高性能、感知 GIL 的 Dirty NIF,在 Erlang 和 Elixir 应用中无缝执行 Python 代码。
erlang-python 项目解决了高并发 BEAM 生态系统与庞大的 Python 数据科学领域之间互操作性的常见挑战。该项目的核心是利用基于 C 的 Dirty NIF 来执行 Python 代码,这使得 BEAM 调度器能够在不阻塞整个虚拟机的情况下卸载繁重的计算任务。
关键技术创新包括:
- 感知 GIL 的执行:精细管理 Python 的全局解释器锁,确保并发的 Python 任务不会降低 Erlang 的实时性能。
- 无锁线程(Free-Threading)支持:旨在利用现代 Python 无需 GIL 运行的能力,最大限度地提高多核利用率。
- 速率限制:内置流量控制机制,防止 Python 端的执行耗尽系统资源。
- 低延迟互操作:提供了在 Erlang 项和 Python 对象之间传递数据的直接路径,非常适合在生产级 Erlang/Elixir 系统中进行实时推理、嵌入生成和复杂的数学处理。
💡核心亮点
- ├─使用 Dirty NIF 实现非阻塞执行
- ├─感知 GIL 并支持 Python 无锁线程
- └─内置速率限制以确保系统稳定性
🎯适用人群
- ├─Erlang 开发者
- ├─Elixir 工程师
- └─AI/ML 基础设施架构师