Python 插件虚拟环境支持

2023-03-07 15:49:12 浏览数 (1)

eKuiper 团队于年前发布了 1.8.0 版本,并在 2 月对该版本的文档进行了完善,同时通过 EMQ Demo Day 直播帮助用户更进一步了解新功能的使用场景。

我们也开始了下一个版本 1.9.0 的开发,该版本将是一个较小的迭代版本,主要目标是实现与工业协议网关软件 Neuron 的多实例连接。目前主要完成了功能调研和规划工作,以及新功能 Python 插件虚拟环境支持的开发。

此外,2 月还发布了 1.8.1 版本,包含导入 Portable 插件以及 Flow Editor 等 bug 修复。

Python 插件虚拟环境支持

虚拟环境是 Python 开发中常用的技术,对 Python 的依赖性管理很有帮助。Anaconda 或 Miniconda 是最流行的 Python 环境管理器之一。conda 软件包和环境管理器包含在所有版本的 Anaconda®、Miniconda 和 Anaconda Repository 中。eKuiper 支持使用 conda 环境运行 Python 插件。

使用该功能之前,用户需要确保 eKuiper 运行的主机或者 Docker container 中已配置好 Python 的 conda 虚拟环境。使用该功能与普通 Python 插件相同,只是需要在插件打包阶段,编写 JSON 元文件时指定使用的虚拟环境名称即可,如下示例文件所示。

代码语言:text复制
{
    "version": "v1.0.0",
    "language": "python",
    "executable": "pysam.py",
    "virtualEnvType": "conda",
    "env": "myenv",
    "sources": [
      "pyjson"
    ],
    "sinks": [
      "print"
    ],
    "functions": [
      "revert"
    ]
  }

在本例中,我们指定了虚拟环境类型 virtualEnvTypeconda,虚拟环境名称为 myenv。这样插件运行时将会运行在 conda 的 myenv 环境中。目前,虚拟环境类型仅支持 conda 。

即将到来

3 月我们将主要进行 1.9.0 版本其他功能的开发,期望在本月底或稍晚与 Neuron 协同发布。在这个版本中,我们将修改与 Neuron 的连接方式,实现多实例连接。此外,我们将开发其他功能,包括局部配置批量下发功能,方便多实例的配置管理;Http Pull Source 支持动态 token,以支持接入更多的 HTTP 数据源等。敬请期待。

版权声明: 本文为 EMQ 原创,转载请注明出处。

原文链接:https://www.emqx.com/zh/blog/ekuiper-newsletter-202302?utm_source=cloud.tencent.com&utm_medium=referral

0 人点赞