zoukankan      html  css  js  c++  java
  • 重复的listen port引发的问题

    今天遇到一个奇怪的问题。另一个项目组的同事在进入跨服的时候出了问题,经过调试排查,发现是没有进入跨服,虽然已经成功在跨服申请创建了角色,但之后客户端似乎并没有请求进入。

    由于同事说代码是没有改动的,那么原因可能是配置错误,或者客户端的问题。询问了一下,客户端的代码也没有改动。那么大概就是配置出了问题了。但我粗略排查了一下,并没有什么异常。此时已经有点灰心丧气了。但我还是打起了点精神,重新再次扫描了一遍跨服和原服的配置,突然发现,loginserver为user开的端口竟然一样。这很奇怪,这说明客户端可能想连接跨服的loginserver,然而却连接了原服的,那么自然就进不去跨服了。

    我把端口改了后,果然正常了。

    但是,为什么端口一样反而还能启动呢?对我来说,这是一个奇怪的现象。我在自己的电脑上也运行了两份loginserver,发现端口一样的确能够启动。于是我重新回顾了一下socket的学习笔记,并测试了bind函数。

    结果却是不能同时开一样的端口,perror提示:Address already in use

    这个测试代码见:https://github.com/demon90s/Beginning_Linux_Programming_CodeNote/blob/master/ch15_Sockets/example4/server.c

    这只能找时间看看项目中网络模块的内部实现是如何的了。

  • 相关阅读:
    2.15 STL复习
    20190214Test(栈与队列)
    STL列表链式前向星
    链式前向星(邻接表)
    Priority_queue详解
    List详解
    NOIP2019计划
    第二章笔记
    第一章笔记
    本地文件上传GitHub
  • 原文地址:https://www.cnblogs.com/demon90s/p/8965140.html
Copyright © 2011-2022 走看看