使用IPC如何告诉客户端服务器正在侦听哪个端口?

时间:2014-04-07 16:01:48

标签: sockets ipc

当使用IPC的套接字时,你可以让系统选择一个随机的自由端口,如下所述:

On localhost, how to pick a free port number?

您可以将流程ID放在" .pid"文件,以便你可以轻松找到apache进程ID,并以这种方式杀死它。

但是当操作系统选择一个随机端口供你监听时,交换端口号的最佳做法是什么?

1 个答案:

答案 0 :(得分:1)

要通知端口号,您可以使用任何其他传输机制,可以是共享磁盘上的文件,鸽子邮件,SMS,第三方服务器,动态更新的DNS条目等。各方必须有共同点分享,然后他们可以沟通。我在这里省略了端口扫描,原因很明显。

有一个有趣的方面是关于不是随机端口而是“浮动”端口号:如果您不想保留常量端口但可以选择一定范围内的侦听端口,那么您可以使用该算法来计算实际端口号基于日期或星期几或其他定期或可预测的信息。这样客户端就知道在哪里查看服务器。

还有一个选择是,在一个端口上启动通信期间,服务器和客户端将同意服务器将等待客户端进行下一个会话的位置。