因为安全原因,在部署nacos-2.2.3版本时,将nacos的application.properties中的server.port端口值由默认值8848改成了server.port=8425
问题:nacos 启动时(sh start.sh -m standalone)报错
如下:
在这里插入图片描述

经过分析,原因是 9425 端口已经被占用了。

然后翻遍了nacos的所有配置项,均为发现9425端口配置,不得已,去分析其源码。
关键源码如下:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

可知:rpcPortOffset() 方法返回了一个偏移量,偏移量细分成了 SDK_GRPC_PORT_DEFAULT_OFFSET 与 CLUSTER_GRPC_PORT_DEFAULT_OFFSET 两个静态Integer类型,分别为1000 和 1001

这样,问题得到解释:8425 + 1000 = 9425

解决方案:修改 server.port 为一个此服务器上少用的端口
实现 server.port + 1000 或者 server.port + 1001 后与此服务器其他进程端口不冲突。

思考
在一个基本端口上经过偏移量设置,实现服务相关的端口设置,这样处理起来确实很便捷,而且易于推导服务端口设置。但是服务不给出端口设置的入口,这样在对端口资源有要求和管控的环境下,会带来不便之处。后续设计系统时,需要多考虑一下。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐