通過分布在網(wǎng)絡上的通道傳遞切片和映射結(jié)構(gòu)的最佳方法是什么?我需要分布在多個EC2實例上運行的應用程序,并想知道如何通過按Go通道通信每個應用程序來實現(xiàn)這一點。這是我想運行的工作流程:1. Process data in one application2. Distribute the data into 10 replica applications3. Each 10 application does its job in a separate EC2 instance4. Once they are all done, they send the result back to the original program5. This is sent over the channel請告訴我。謝謝!
1 回答

瀟湘沐
TA貢獻1816條經(jīng)驗 獲得超6個贊
如果取決于您將為序列化選擇的格式。
一個非常適合過度的網(wǎng)絡通信MessagePack(有效的二進制序列化格式,它可以讓你多語言,如JSON之間交換數(shù)據(jù),但它的速度更快和更?。?/p>
Go 庫之類的philhofer/msgp
可以序列化任何結(jié)構(gòu)(例如帶有 map 的結(jié)構(gòu)),包括復合類型,如映射和數(shù)組。
但是,它使用 Go1.4go generate
命令。(go 1.4rc1 已經(jīng)出來了)
從那里,像這樣的庫docker/libchan
可以提供幫助:Libchan 是一個超輕量級的網(wǎng)絡庫,它允許網(wǎng)絡服務以與 goroutine 使用通道進行通信相同的方式進行通信。
- 1 回答
- 0 關(guān)注
- 173 瀏覽
添加回答
舉報
0/150
提交
取消