Performance Go中异步TCP服务器的正确结构是什么?

Performance Go中异步TCP服务器的正确结构是什么?,performance,go,tcp,asyncsocket,tcpserver,Performance,Go,Tcp,Asyncsocket,Tcpserver,我有一个客户端发送大约500k请求(消息)/分钟。每条消息大约200字节到2KB。每条消息都将保存在数据库中(如Couchbase) 根据核心、端口、连接和goroutine来构造Go-TCP服务器以处理此负载的正确方法是什么 正如JimB提到的,TCP服务器应该不难根据您的需要建立并开始基准测试。一个简单的布局是等待传入的TCP连接,然后执行go例程来处理它。在这个goroutine中,您可以放入任何您想要的阻塞代码,在本例中是对DB的写出。下面是一个简单示例的链接: 一旦你开始工作,如果它

我有一个客户端发送大约500k请求(消息)/分钟。每条消息大约200字节到2KB。每条消息都将保存在数据库中(如Couchbase)


根据核心、端口、连接和goroutine来构造Go-TCP服务器以处理此负载的正确方法是什么

正如JimB提到的,TCP服务器应该不难根据您的需要建立并开始基准测试。一个简单的布局是等待传入的TCP连接,然后执行go例程来处理它。在这个goroutine中,您可以放入任何您想要的阻塞代码,在本例中是对DB的写出。下面是一个简单示例的链接:

一旦你开始工作,如果它不符合你的性能标准,你可以使它更复杂。下面是一个很好的示例,它使用工作池每分钟处理1M个HTTP请求


你试过什么?这不是很多请求,所以创建一个概念证明并测试它。我如何生成X个TCP请求/分钟?