当前位置: 首页 > 知识库问答 >
问题:

Spring Micro服务如何知道Axon服务器端口

汪跃
2023-03-14

这一完整代码可从以下网址获得:https://github . com/Naresh-Chaurasia/API-micro services-Kafka/tree/master/micro services-CQRS-SAGA-Kafka/discovery service

我有以下Spring引导设置。

  • 客户端/邮递员正在调用 API 网关(它也充当负载均衡器)。
  • API 网关和产品是 Spring 启动应用程序/微服务,已在 Eureka 注册
  • 发现服务(也是 Spring 引导应用程序)。
  • 我按以下顺序运行应用程序:尤里卡发现服务、产品、API 网关

在产品的pom.xml文件中,我有以下条目:

<dependency>
    <groupId>org.axonframework</groupId>
    <artifactId>axon-spring-boot-starter</artifactId>
    <version>4.4.7</version>
</dependency>

我使用以下轴突服务器:AxonServer-4.5.5.jar运行轴突服务器,axonserver.properties条目如下:

server.port=8026
axoniq.axonserver.name=My Axon Server
axoniq.axonserver.hostname=localhost
axoniq.axonserver.devmode.enabled=true

Axon服务器的默认端口是8024。我已经尝试通过更新axonserver.properties文件在8024、8025、8026上运行它。Axon服务器正在localhost上运行。

每次我通过更新Axon服务器来更改Axon服务器中的端口。属性文件中,产品微服务标识Axon服务器,即使Axon server未在默认端口上运行。我没有在产品微服务中指定Axon server端口。

我的问题是:即使我没有在产品微服务中指定端口,产品微服务如何识别正确的端口。

共有1个答案

喻渊
2023-03-14

我相信你误解了这里的端口。轴突服务器有3个端口:

  • <code>服务器。port:Axon Server控制台的HTTP端口。默认值为8024
  • 端口:Axon Server节点的gRPC端口。默认值为8124
  • 内部端口:集群内Axon Server节点之间通信的gRPC端口(仅限Axon EE)。默认值为8224

因此,默认的AF应用程序将始终尝试连接到运行于8124的Axon服务器,这是gRPC端口。8024端口用于访问AS仪表板(以及其他更具体的东西,如Rest APIendpoint)。

再补充一点,你可以在这里查看属性和配置的完整列表ref-guide:https://docs . axon IQ . io/reference-guide/axon-server/administration/admin-configuration/configuration # configuration-properties

 类似资料:
  • 对于cadence来说,历史服务是一个响铃,因此如果一个新的历史服务被添加到历史服务中,每个历史服务将知道一个新的历史服务要加入。但是前端服务需要将请求路由到历史服务。前端服务如何知道还有一个历史服务要加入?

  • 我对Axon框架比较陌生,只是评估框架是否适合我的项目。本文描述了事件的版本控制。但是在本例中,EventStore更改为JPA。是否可以将Axon服务器上传事件作为事件存储?还是我误解了什么?

  • 我有一个Spring Boot微服务项目,用三个微服务来测试分布式事务管理的saga模式。 当我使用 命令后,微服务无法连接到Axon服务器,我收到了以下错误: 我的问题是为什么微服务在中寻找axon服务器,这显然是错误的,并且违反了它们在中的配置: 这里的轴子服务器的容器名称。

  • 问题内容: 目前,我正在研究基于Java RMI构建的聊天服务器- 客户端程序。为了使客户端能够检测到其连接的服务器已失效,我只能想到两种可能的解决方案,但是在我的情况下,它们都无法很好地工作。 1.等到客户端需要调用服务器的某些方法后,这种方法无法正常工作,因为如果聊天客户端不调用服务器的任何方法,它将不会知道服务器已死,因此聊天客户端无法接收那时再没有任何新的聊天消息。 2.通过每隔几秒钟调用

  • 我正在制作满足以下条件的Netty服务器: null 在我的情况下,既没有发生“通道不活动”事件,也没有发生“连接被对等方重置”异常。 这是我使用的Netty测试客户端代码的部分。 如何在要回复时注意到断开连接?

  • 根据IBM文档:清除策略指定在检测到陈旧连接或致命连接错误时如何清除连接。有效值为EntirePool和FailingConnectionOnly。 问题:服务器如何/何时知道连接已过时?它是否会尽快(立即)清洗池任何连接都会过时,或者按照收获时间发生? 假设收割时间为180秒。假设收割线程上次在下午3:05运行,连接在下午3:06失效,服务器是在下午3:06自己清除池,还是只在下午3:08清除池