Golang goroutines共享RPC连接
我有一个Golang服务器,它使用专用goroutine服务入站请求。这些goroutine将使用rpc/gob访问另一个后端go服务器。在重用连接以使Gob更好地工作的情况下(共享连接的请求可以在不重新发送的情况下重用元数据,也可以为TCP启动节省时间),我正在考虑实现类似连接池的机制(如mysql客户端池),但在此之前我错过了任何重要的东西吗 有任何特定的方法来处理这种共享RPC客户端吗?Golang goroutines共享RPC连接,go,rpc,gob,Go,Rpc,Gob,我有一个Golang服务器,它使用专用goroutine服务入站请求。这些goroutine将使用rpc/gob访问另一个后端go服务器。在重用连接以使Gob更好地工作的情况下(共享连接的请求可以在不重新发送的情况下重用元数据,也可以为TCP启动节省时间),我正在考虑实现类似连接池的机制(如mysql客户端池),但在此之前我错过了任何重要的东西吗 有任何特定的方法来处理这种共享RPC客户端吗? 或者任何为处理这种情况而构建的项目?经过一些调查后,我发现内置客户端库中已经完成了一个池机制,基于,但
或者任何为处理这种情况而构建的项目?经过一些调查后,我发现内置客户端库中已经完成了一个池机制,基于,但如果有人能与我分享更多的见解,我仍然很感兴趣。请参阅-此库进一步进行了RPC优化-它使用独立的读写循环、消息批处理和压缩。与net/rpc相比,它还有更简单的API
在一个实际的生产项目中,从基于http的rpc切换到gorpc可以将rpc网络带宽从300Mbit/s减少到24Mbit/s。虽然内置池对我来说简单且足够,并且可能有更多的官方支持,但我仍然非常有兴趣尝试这个。谢谢,瓦利亚拉