首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在go中运行nodejs应用程序

问在go中运行nodejs应用程序
EN

Stack Overflow用户
提问于 2017-03-20 19:48:46
回答 3查看 2.5K关注 0票数 0

我有一个要求。有没有办法在golang内部运行nodejs应用程序?我需要将nodejs应用程序包装在golang应用程序中,最后生成一个golang二进制文件,该文件启动nodejs服务器,然后能够调用nodejs rest端点。我需要使用nodem_odules将整个nodejs应用程序封装在golang二进制文件中,如果有必要的话,还需要封装nodejs运行时。

EN

回答 3

Stack Overflow用户

发布于 2017-03-20 20:14:23

好的,你可以做一个Go程序,它包括一个压缩的Node应用程序,它提取并启动,但它将很难做好-你会有巨大的二进制文件,在提取文件时延迟,潜在的可移植性问题等。通常当你想调用REST端点时,你在一些服务器上托管你的Node应用程序,你让客户端应用程序(在你的例子中是Go应用程序)连接到那个Node应用程序正常工作。优点是它更快,应用程序更小,你没有Node二进制文件和插件的可移植性问题,你可以随时快速更新你的后端。

票数 0
EN

Stack Overflow用户

发布于 2017-03-21 01:51:36

将nodejs应用程序嵌入到您的golang中将是一个非常糟糕的主意,原因有很多,例如:大小、安全更新推送等。

然而,如果你强烈地认为它们应该在一起,你可以很容易地用这两个(一个golang服务器+一个节点应用)创建一个docker容器,并通过docker启动它们。您可以将入口点设置为supervisord守护进程,以便在运行容器时启动节点服务器和golang服务器。

如果您计划通过kubernetes进行部署,您可以创建两个单独的pod容器(一个用于golang服务器,另一个用于节点服务器),但也可以将它们作为docker一起部署。

票数 0
EN

Stack Overflow用户

发布于 2017-03-21 03:46:33

有多个项目可以将二进制文件和/或文件系统数据嵌入到Go应用程序中。

查看项目‘vfsgen’的‘Alternative’部分:

https://github.com/shurcooL/vfsgen#alternatives

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

https://stackoverflow.com/questions/42902815

复制
相关文章

相似问题

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