C语言 nanomsg或ZeroMQ是否适合扩展客户端连接数?



我需要建立一种即时通讯系统。从我的简短探索来看,ZeroMQ和nanomsg的目标是在后端分布式系统中的服务器-服务器通信,而不是同时管理100万终端用户客户端连接。这准确吗?如果是这样,在C语言中是否有一个好的消息传递库可以很好地扩展客户端数量?消息将是server->client push和client->server request/response的混合。

nanomsg库不是面向服务器到服务器的协议。它有几个独特的通信模式,覆盖了广泛的通信需求。参见:nanomsg通信模式。

nanomsg库非常容易使用- nn_bindnn_connect可以在同一个套接字上被多次调用,从而允许套接字与多个异构端点通信。

基于文章1,文章2和我自己的编码经验,我更喜欢nanomsg而不是ZeroMQ。还可以看看这里给出的非常好的比较:是否有在BSD或MIT许可下发布的ZeroMQ的Python 2.7替代品?

的确,nanomsg库使网络层快速、可扩展且易于使用。

当您想使用tcp/ip库来允许100k个终端用户客户端同时运行时,您将遇到一个问题,因为您的系统将耗尽连接所有这些客户端的端口。ZeroMQ和nanomsg似乎都解决了这个问题。乍一看,我想说纳米是更好的方法。但我需要先试一下。

最新更新