使用python

时间:2018-05-10 20:15:25

标签: python node.js google-app-engine frontend backend

我正在接受GCP和GAE,以及nodejs和python以及网络(我知道)。

[+] 我有什么

基本上我有一些nodejs代码接受一些输入,然后应该将该输入发送到一些python代码,它将为它做更多的东西。我的第一个想法是通过GAE部署nodejs代码,然后在python服务器中托管python代码,然后从nodejs前端发出post请求到python服务器后端。

[+] 我希望能做什么:

只需将我的nodejs代码和我的python代码部署在GAE的同一个项目和实例中,这样nodejs就是人们看到的前端,但是python服务器也在同一环境中运行,并且只能与nodejs没有在线发送任何东西。

[+] 我读过的内容

https://www.netguru.co/blog/use-node-js-backend

Google App Engine - Front and Backend Web Development

无数其他谷歌搜索此类设置但无济于事。 如果有人能指出我正确的方向,我会非常感激。

1 个答案:

答案 0 :(得分:1)

你不能让python和nodejs在同一个实例中运行,但是它们可以作为单独的服务运行,每个服务在同一个GAE应用程序/项目中都有自己的实例。请参阅Service isolationDeploying different languages services to the same Application [Google App Engine]

使用帖子请求可以很好地工作,但可能需要一些努力才能确保无法进行外部访问。

由于您打算将nodejs服务用作前端,因此您仅限于使用flexible environment,这限制了服务间通信选项 - 您无法使用{{3 (仅在push queues中得到适当支持),恕我直言将是比发布请求更好/更安全的解决方案。

另一个安全通信选项是nodejs服务将数据放入数据存储区并让python服务从那里获取 - 数据存储区由同一GAE应用程序内的所有实例/版本/服务共享。更松散耦合的恕我直言 - 每个服务都可以运行(至少有一段时间)而另一个服务没有活着(如果使用帖子请求则不可能)。

感兴趣:standard environment

<强>更新

Node.JS目前也可在标准环境中使用,因此您可以使用这些功能,请参阅: