0

假设我有四个应用程序:

  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\

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

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

4

1 回答 1

0

我将 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 应用程序中是有意义的,因为部署要简单得多。

于 2021-04-27T19:33:21.053 回答