问题标签 [azure-spring-cloud]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
123 浏览

spring-boot - Azure - 使用 AMQP Web 套接字绑定 EventHub 消费者

我正在尝试建立一个非常基本的概念证明,以将 Spring 应用程序链接到 Azure 事件中心。我在启动时不断收到此日志:

尽管我为 EventHubProducerAsyncClient、EventHubConsumerAsyncClient 和 EventProcessorClient 定义了明确地将传输类型设置为AMQP_WEB_SOCKETS. 看这里:

制片人:

消费者:

事件处理器:

我在这里遗漏了一些明显的东西吗?我不明白它如何在明确定义时抱怨 TransportType 不是 AMQP Web Sockets。

0 投票
0 回答
30 浏览

azure-spring-cloud - azure-spring-cloud-maven-plugin 部署内存 512mi

我正在使用 Azure 的 azure-spring-cloud-maven-plugin。如何将部署:内存值设置为 512 英里?Azure 门户允许将该值作为内存选项,但对于 Maven 插件,似乎唯一的内存配置<memoryInGB>仅允许 int。

0 投票
0 回答
43 浏览

azure - Azure DevOps - Azure Spring Cloud Blue/Green 部署导致没有生产部署

我在通过 Azure DevOps 和AzureSpringCloud@0任务部署 Azure Spring Cloud 时遇到了一个奇怪的问题。

我尝试使用此任务设置蓝/绿部署。我有舞台蓝色和舞台绿色。如果我的 Azure DevOps 任务部署为蓝色,Azure 门户中的一切似乎都正常,但如果我的任务部署为绿色,则根据 Azure 没有生产部署。

这是 Azure DevOps 任务的输出:

将应用程序 my-project 上的活动部署设置为蓝色

这是 Azure 门户中的警告:

此应用程序没有生产部署。您可以在部署面板中设置生产部署。

它看起来像这样:

具有两个暂存部署的 Azure 门户

使用这样的 Azure CLI 命令...

az spring-cloud 应用部署列表...

...我得到了两个部署的 JSON,但两者都没有激活。

这是我在 Azure DevOps 中设置任务的方式:

如果我导航到我的应用程序 URL,应用程序正在运行,但我不确定哪个阶段。如果我再次运行 Azure DevOps 管道,它会知道绿色当前正在生产中并切换为蓝色,但我不知道它从哪里获取此信息。

这是一个已知问题还是我做错了什么?

0 投票
1 回答
146 浏览

spring-boot - 在一定的空闲时间后,连接被关闭并与 HikariCP 一起驱逐消息

我的 Spring Boot 应用程序正在使用 HikariCP。我收到以下错误消息“连接已关闭并且连接已被驱逐”

当我让我的应用程序在一夜之间保持打开状态并且在大约 10 个小时的空闲时间后尝试从应用程序访问 API 时,我收到了这条消息。10 小时空闲时间后的第一个呼叫需要 11 秒才能返回响应,并在日志中给了我上述消息。此后的后续调用需要大约 2 秒的响应时间,我没有看到这条特定消息。有谁知道为什么我会收到这条特定的消息,以及为什么在空闲时间之后第一次通话要花这么长时间。我的应用程序部署在 Azure Spring Cloud 上。以下是库版本

我已更改的 Hikari 属性值。我已更改此设置,因为默认的 30 分钟给了我连接超时并生成了异常。现在更改 maxLifetime 属性后,我没有收到任何连接超时异常

0 投票
0 回答
24 浏览

spring-boot - 如何使用 intelliJ 插件在 Azure Spring Cloud 上重新部署我的 Spring Boot 应用程序

我们目前正在 azure spring cloud 上运行我们的应用程序。它是一个后端 Spring Boot 应用程序,暴露了一些控制器 API。

现在,在 azure spring 云中新创建的应用程序上运行第一次部署后,我们无法重新部署更新的版本。我们没有使用暂存区,而是直接构建到默认(生产)阶段。

为了进行这些部署,我们使用 Intellij Azure 插件 for spring cloud。选择选项部署:在此处输入图像描述

并运行部署:

在此处输入图像描述

接下来我们看到在 azure 上成功部署:

在此处输入图像描述

一个新的 pod 已经创建,我们看到不同 id 下的日志。

在此处输入图像描述

这表明一切顺利。但是,当我们现在尝试更新的控制器端点时,更改不存在。我们从未看到添加的第二个调试消息“测试更新”。

这是一个错误还是没有重新部署应用程序的选项,您是否应该始终创建一个新应用程序?

为了检查我们是否没有错过新版本中的构建失败,我们还创建了一个新应用程序并将更改部署到这个应用程序。打印了调试消息。

0 投票
1 回答
82 浏览

azure - 缺少指标 - Azure Spring Cloud

我在 Azure 中有一个Azure Spring Cloud资源,其中包含两个应用程序。为了简单起见,我们将这些应用称为App AApp B

我想为这两个应用程序设置监控和警报,但实际上只有一个应用程序编写了所需的指标。根据Azure 文档,应用仪表板应显示某些指标,例如tomcat.global.request.total.count,但只有应用 A会这样做。应用程序 B没有编写这些指标,我想知道为什么,因为我在 Azure 文档中找不到任何迹象表明我必须设置一些东西才能使其工作。

应用 A 指标概览 应用 A 指标概览

App B 指标概览 App B 指标概览

(两个应用程序在显示的时间范围内都有流量)

我是否必须安装一些 Maven 包或进行一些其他配置才能使这些默认指标起作用?我尝试安装 maven 包applicationinsights-spring-boot-starter但这并没有改变任何东西。

0 投票
1 回答
117 浏览

spring-boot - 用于 Spring Boot 微服务的 Azure Spring Cloud V/s AKS

我们在嵌入式 tomcat 上运行的本地服务器上部署了很少的 Spring Boot 微服务。他们不使用配置服务器。还使用服务器端负载平衡;所以也没有单独的服务发现服务器。目前这些应用程序没有容器化。

我们需要将这些 Spring Boot 应用程序移动到 azure Cloud。我看到两个选择 -

  1. 将这些应用容器化并部署在 Azure Kubernates 服务上。
  2. 将这些应用部署到 Azure Spring Cloud。

根据查看 Azure Spring Cloud 文档,它似乎是一种具有托管云和发现服务的 PaaS 服务。此外,我们可能不需要对当前的本地应用程序进行太多更改(容器化)即可部署。但是鉴于我们在当前的本地应用程序中不使用配置服务器和服务发现,使用 Azure Spring Cloud 而不是 AKS 是否是一个不错的选择?

总体而言,从易于部署、自动扩展、总体成本、监控/日志记录的角度来看,哪个是更好的方法?

0 投票
0 回答
65 浏览

spring-boot - Spring boot Redis缓存TTL属性即时更改

如果在应用程序配置服务器中更改了相同的属性,是否可以在运行时更改 Redis 缓存的 TTL 属性?有没有办法在配置服务器发生更改时在运行时自动刷新 Redis 实例属性的过程?

0 投票
0 回答
71 浏览

spring - Azure Spring Cloud http2 支持

我正在使用 GRPC 服务器测试 Azure Spring Cloud。GRPC 的要求之一是使用 HTTP/2 进行通信。

Azure Spring Cloud 是否适用于 HTTP2?

我尝试了以下场景:

1.) 通过将 WebApplicationType 设置为 None 并将 server.port 映射到 grpc.port 来关闭 Springboot 的内部 tomcat。此设置在本地工作,但是当我在 Azure Spring Cloud 中部署时,客户端使用 https 连接到服务端点。当它到达 GRPC 服务器(应用程序)时,它会降级为 HTTP/1。服务器有很多 PROTOCOL_ERROR 问题,因为连接是 http/1,而 GRPC 服务器期望它是 http/2。

2.) 使用 Spring Cloud Gateway 并在内部将流量重定向到 GRPC Server。为了在 Spring Cloud Gateway 上使用 http2,我在 GRPC 服务器和网关上启用了证书。当客户端连接到服务应用程序(具有 GRPC 服务器的网关)时,当它到达网关时,会出现一些 NotSSLRecordException。这在本地有效,但是当它部署到 Azure Spring Cloud 时它不起作用。可能是因为 Azure Spring Cloud 应用程序服务端点在重定向到应用程序服务(具有 GRPC 服务器的网关实例)时使用自己的证书对其进行包装,因此连接不再是非 ssl/tls。由于 NotSSLRecordException 问题,网关无法处理请求。