开发者社区> 问答> 正文

Python框架可替代“ Java + OSGi”

我正在考虑将Python和C / C ++结合起来,以取代SW架构中有关OSGi + Java + JNI + C / C ++的原始概念。

我绝对不需要替换诸如Felix或Equinox之类的OSGi框架的所有功能。

我在Python代码中真正需要的是:

应用层模块化的促成因素 基于组件的应用程序框架 服务/组件的中央注册表 非常轻巧的框架,它将在嵌入式设备上运行(尽管有足够的RAM) 您能为这样的Python框架提供建议吗?

展开
收起
祖安文状元 2020-02-21 14:24:04 913 0
1 条回答
写回答
取消 提交回答
  • 我认为OSGi提供的许多内容都与Java的体系结构密切相关:其类加载器和类型安全性。实施服务注册表应该不会太难,但是要以OSGi的准确性进行管理几乎是不可能的。显然,除非您将模块移到单独的进程中,否则OSGi提供的多个名称空间的功能在Python中将无法使用,这将需要更昂贵的进程间通信才能进行模块间通信。您可以从基于本地的Apache Celix开始,但是我对它的实用程序也有类似的疑问,因为本地代码没有提供很多有关其依赖项的信息。

    通用OSGi的初衷是更通用的解决方案。在此模型中,您将OSGi框架保持原样用于部署和管理。但是,您创建的处理程序包可以映射用其他语言编写的包。例如,Python处理程序或C ++本机。处理程序会将本地服务注册表模型映射到OSGi服务注册表。由于OSGi服务注册表已正确触发,因此这很容易做到。本机处理程序将映射捆绑事件,例如启动/停止,以指示操作系统启动/停止本机代码。

    2020-02-21 14:24:09
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载