猿问

通过地图,通过通道和网络切片?

通过分布在网络上的通道传递切片和映射结构的最佳方法是什么?我需要分布在多个EC2实例上运行的应用程序,并想知道如何通过按Go通道通信每个应用程序来实现这一点。


这是我想运行的工作流程:


1. Process data in one application

2. Distribute the data into 10 replica applications

3. Each 10 application does its job in a separate EC2 instance

4. Once they are all done, they send the result back to the original program

5. This is sent over the channel

请告诉我。谢谢!


元芳怎么了
浏览 156回答 1
1回答

潇湘沐

如果取决于您将为序列化选择的格式。一个非常适合过度的网络通信MessagePack(有效的二进制序列化格式,它可以让你多语言,如JSON之间交换数据,但它的速度更快和更小)Go 库之类的philhofer/msgp可以序列化任何结构(例如带有 map 的结构),包括复合类型,如映射和数组。但是,它使用 Go1.4go generate命令。(go 1.4rc1 已经出来了)从那里,像这样的库docker/libchan可以提供帮助:Libchan 是一个超轻量级的网络库,它允许网络服务以与 goroutine 使用通道进行通信相同的方式进行通信。
随时随地看视频慕课网APP

相关分类

Go
我要回答