【问题标题】:Performance of a Socket套接字的性能
【发布时间】:2016-01-07 09:58:33
【问题描述】:

以下场景有什么区别。是否有任何性能差异因此导致的。

考虑一个服务器提供 5 种服务,如 web、mail、file、app 和 ssh:

  1. 每个服务及其对应的端口都绑定了不同的套接字(每个服务都有单独的套接字)。
  2. 单个套接字与它运行的端口对应的所有服务绑定(所有服务的公共套接字)。

【问题讨论】:

标签: unix networking tcp udp connection


【解决方案1】:

两个单独的进程不能在相同协议和地址的套接字上调用bind()

详细的解释可以看这个之前的回答:Socket options SO_REUSEADDR and SO_REUSEPORT, how do they differ? Do they mean the same across all major operating systems?

【讨论】:

  • 在 UDP 中是否可能?
  • 我认为使用 udp 是可能的,但您需要认真考虑您的协议。每个 udp-packet 将到达所有进程。你想达到什么目标?
  • 没有。只是为了澄清。因此,我需要在我的服务器上运行每个服务的每个独立套接字。对吗?
  • 您当然可以在进程之间共享套接字。例如,考虑一个程序,它有一个 TCP 连接作为其标准输入,然后调用fork。而且 TCP 端口不绑定到进程,它们绑定到套接字。
  • @DavidSchwartz 是否可以将套接字绑定到多个端口?
猜你喜欢
  • 1970-01-01
  • 2011-03-21
  • 2010-12-26
  • 1970-01-01
  • 1970-01-01
  • 2010-12-25
  • 2012-05-23
  • 2013-10-15
  • 1970-01-01
相关资源
最近更新 更多