繁体   English   中英

将多个应用程序组合成一个二进制文件

[英]Combine multiple applications into single binary

假设我有四个应用程序:

  1. http-网关
  2. NATS
  3. 业务逻辑客户端
  4. 业务逻辑服务器
Gateway <--> NATS <---> B.L.

我的项目结构如下:

nats-cluster\
  cmd\
    gateway\gatway.go
    blclient\blclient.go
    blserver\blserver.go
  gateway\
  blclient\
  blserver\

目前,我必须分别运行其中的四个,然后他们才能相互交谈。 网关和 BLclient 使用request-reply模式,而blclient使用grpcblserver交换消息。 我想知道是否有任何方法可以在 Go 中生成单个二进制文件,以便应用程序可以通过单个二进制文件运行。

有没有办法在 Go 中将多个应用程序二进制文件组合成一个?

我将 NATS 服务器嵌入到 Simple IoT 应用程序中。 这是我如何做到的:

https://github.com/simpleiot/simpleiot/blob/master/cmd/siot/main.go#L452

https://github.com/simpleiot/simpleiot/blob/master/natsserver/nats-server.go

效果很好,而且超级容易做。

对于某些应用程序,将所有内容捆绑在一个 Go 应用程序中是有意义的,因为部署要简单得多。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM