gpt4 book ai didi

c++ - 每个 session 的连接或通过一个连接多路复用多个 session

转载 作者:太空宇宙 更新时间:2023-11-04 04:03:44 29 4
gpt4 key购买 nike

在设计客户端/服务器架构时,多路复用从同一进程到远程服务器的多个连接(即共享一个连接)与在客户端中为每个线程/ session 打开一个连接(通常在连接到内存缓存或数据库服务器。)

我知道每个连接都有一些开销(例如,如果服务器有 50,000 个打开的连接,占用了大量 RAM),这是 facebook 为 memcached 制作 UDP 补丁的主要原因之一。但我不希望有接近这个数字的任何地方。最多可能有 10,000 个。在建立 tcp/ip 连接和进行授权方面也有节省,但现在我宁愿像 memcached 那样将授权留给防火墙软件。

在少于 10K 连接的 tcp/ip 客户端/服务器应用程序中实现多路复用连接是否有任何理由?

编辑 - 详细信息:

这是我正在使用的数据库服务器/客户端。我认为 Informix 和 Oracle 实际上允许通过一个 tcp/ip 连接进行 session 多路复用。在 Informix 文档中,他们说您可能会提高非线程客户端的性能(没有提到多线程客户端,也许它不是线程安全的实现。)

最佳答案

is there any advantage to multiplexing multiple connections vs opening one connection per thread/session

是的,尽管这取决于单纯形法的实现。您可能知道防火墙的麻烦,例如FTP、SIP 等,尤其是在中途使用加密时。这是影响使用多个连接还是仅使用一个连接的决定的因素。

关于c++ - 每个 session 的连接或通过一个连接多路复用多个 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8707807/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com