2017-01-23 32 views
3

我有两个去应用程序运行在不同的机器上。 我希望他们以本地快速方式相互沟通。如何连接分布式Go应用程序?

我该如何做得更好?我与Erlang一起工作,发现它在那里实现的方式非常方便。

Go应用程序之间进行通信的首选方式是什么?

+1

你可以使用像RabbitMQ这样的队列。 Google还发布了一个名为[gRPC](http://www.grpc.io/docs/guides/)的项目,您可能会喜欢。 – solarc

+3

[“net/rpc”](https://golang.org/pkg/net/rpc/),[“net/rpc/jsonrpc”](https://golang.org/pkg/net/rpc/jsonrpc /),[gRPC](http://www.grpc.io/docs/guides/),普通的HTTP,通过消息队列异步,请选择。 – JimB

+0

您可以创建简单的API来在您的应用程序之间进行对话。 – cheks

回答

1

网/ RPC - 开箱&快速

GRPC的 - 快速和通用(IMO的路可走)

网/ RPC/jsonrpc - 好,当您需要人类可读的消息或想要集成 去客户端js代码

纯HTTP HTTP - overkill fo围棋程序的R通信,你就必须计划路线和数据编码自己,这是不必要的努力

消息队列 - 慢一点的办法,但你可以从先进的路由和持久性,他们提供

受益
相关问题