首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Python中嵌入Node.js

在Python中嵌入Node.js
EN

Stack Overflow用户
提问于 2014-09-17 21:28:40
回答 2查看 2.2K关注 0票数 2

我正在考虑将node.js嵌入到python中的选项,以便将node.js功能添加到现有的python代码中。我知道可以用相反的方式来完成,就像这个职位中描述的那样。但是,我希望尽可能保持现有Python项目的完整,这意味着允许Python管理执行。

PyV8做了我想做的一切,除了提供一个node.js类的环境,它允许我在PyV8中使用node.js模块,所以它似乎是一个很好的起点。

node.js是否提供了与V8类似的外部API,从而可以修改PyV8以包装node.js?如果没有,是否有方法将node.js环境加载到PyV8中,以便我可以使用node.js模块?

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-09-17 22:03:44

不支持您想要做的事情。与CPython解释器,甚至V8 JavaScript解释器不同的是,Node.js不是为嵌入而设计的,它没有接口,也没有改变这种情况的真正计划。

我找不到任何关于这方面的正式文档,但是有许多像这一个这样的线程提供了相关的信息。

但这并不意味着这不可能。Node的顶层并没有那么复杂,实际上您只需要把它的几个部分划分出来就可以做不同的事情了。事实上,人们试图在像tacnode这样的项目中做到这一点。我不知道他们中的任何一个是否已经为黄金时段做好了准备,但这可能是值得一看的,尤其是如果他们不完整的话,你是否愿意并有能力做出贡献。

当然,这只能使您嵌入到C或C++中;您仍然需要嵌入到Python中。但是包装C共享库以便在Python中使用它(好吧,CPython和PyPy)是一个长期解决的问题;Python从一开始就有扩展模块,如果您不想编写任何C代码,也有ctypescffi。还有一些第三方项目,比如Cython,可以让您编写几乎- Python代码,直接调用您的共享库,就好像它是本地C,并编译成Python扩展模块。

所以,几乎可以肯定它是可行的,但它可能不会是琐碎的,或者是打包好的,并且已经准备好从盒子里出来了。

票数 4
EN

Stack Overflow用户

发布于 2014-09-18 06:26:02

不要嵌入。相反,将python和Node放在两个不同的进程中,并在它们之间进行通信。例如,RabbitMQ具有节点和Python的客户端。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25900639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档