问题标签 [spring-cloud-function]

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 回答
71 浏览

rest - 如何在 GCP 上使用 Spring Cloud Function 获取查询参数

我们正在使用 Spring Cloud Functions 构建 Google Cloud Functions。这些函数通过 GET 调用并具有多个查询参数(例如http://foo.bar/query?param=something&otherparam=else)。不幸的是,使用 POST 不是此功能的选项。

如何使用 Spring Cloud Functions 访问查询参数?

0 投票
1 回答
45 浏览

spring-cloud-function - spring-cloud-function-deployer 如何在运行时部署/取消部署功能?

我正在尝试构建自己的 faas 服务。我想支持在运行时加载该功能。

但是当我运行这些代码时,我得到了那些

spring-cloud-function-deployer 如何在运行时部署/取消部署功能?

0 投票
1 回答
240 浏览

java - Spring Cloud 功能可以访问任何 Spring 托管组件吗?

我正在使用 Azure-functions 开发 spring-cloud-function。是否可以在“处理程序”(扩展 AzureSpringBootRequestHandler)中使用任何弹簧托管组件?

我试图通过示例项目缩小范围: https ://github.com/spring-cloud/spring-cloud-function/tree/master/spring-cloud-function-samples/function-sample-azure

所以我能想象的最简单的例子是:

然而,看起来这个处理程序不是由 spring 管理的,也不能用于自动装配。很高兴能得到一些帮助,谢谢!

0 投票
1 回答
115 浏览

spring-integration - 多个 Spring Integration 流作为工作人员从许多 SQS 队列中消费

我必须附加许多SQS队列以workers使用和处理消息(使用spring integration flow)。我最初的想法是有一个spring boot应用程序,每个 SQS 队列有 1 个通道(spring integration aws)。

这会像1 SQS -> 1 Channel -> 1 Flow

但是,这可能会导致maintainability, deployment,memory问题,我们将无法独立扩展每个工作人员。听起来像一个monolith of workers. 另一种选择是创建spring cloud function每个worker类型并将它们部署为lambda.

spring stack在(我想使用spring integrationand )中是否有针对此场景的其他解决方案reactor,这样我们可以独立扩展每个工作人员并独立管理每个工作人员的部署(听起来像是microservice每个工作人员的一个,但它没有域,只是一些处理逻辑,如验证,调用一些 api,存储到数据库

0 投票
3 回答
8838 浏览

aws-lambda - /lib64/libc.so.6:未找到版本“GLIBC_2.32”

我正在使用基本示例在 Ubuntu 上构建 lambda。它的构建没有任何错误,但是如果我在崩溃时在 aws 上上传和测试它:

日志输出为:

0 投票
0 回答
139 浏览

java - Spring Cloud 功能 - 表单数据/多部分文件?

我正在创建一个 Spring Cloud 函数,我想提供两个输入,一个 id 和一个 Multipart 文件(CSV 文件),但我遇到了麻烦。

如果我选择发送带有多部分文件的帖子,则该功能将无法识别并给出如下错误Failed to determine input for function call with parameters:

邮递员的要求是这样的:

在此处输入图像描述

我尝试过使用更类似于 Spring MVC 的东西,比如请求实体对象,但没有运气。

我拥有的备份(Python haha​​ 除外)将使用二进制数据发布,因此它只是一个包含文件内容的字符串,它确实有效,但需要我将 id 附加到 csv 的每一行中有点乱。

还有其他解决方案,但尝试让它作为 Java lambda 工作是我们想要尝试并用作首选的方法。

基础设施将修复手动文件上传/验证过程,该过程目前很乏味,看起来像:postman -> load balancer -> lambda -> ecs

邮递员/负载均衡器部分将在未来被替换。理想情况下,在 Java 中对 lambda 进行排序,以获取文件和 id。

谢谢你的帮助 :)

0 投票
1 回答
408 浏览

spring-cloud-stream - Spring Cloud Stream 函数式做法:消息转换产生一个空字段值的对象

我正在尝试按照功能方法(Spring Boot:2.3.4,SC:Hoxton.SR9,SC Stream:3.0.9,SC Function 3.0.11)使用kafka创建一个反应式Spring Cloud Stream应用程序。问题:自动反序列化的对象具有空字段值。

kafka 消息的 Json Payload:

代码示例:

应用程序.yaml

日志:

使用命令式方法一切正常:

日志:

我也尝试过运行一个示例应用程序:https ://github.com/spring-cloud/spring-cloud-stream-samples/tree/master/processor-samples/sensor-average-reactive-kafka 我遇到了同样的问题它。我得到的输出是:

任何提示或建议将非常有帮助和赞赏:)

0 投票
1 回答
44 浏览

classloader - 使用 catalog.lookup 从函数转换返回值时发生 ClassCastException

尝试使用 Spring Cloud Functions,我创建了一个包含单个类的外部 jar 文件,如下所示:

其中 B 是我在单独的库中的自定义对象。我的应用程序(单独的 spring boot 应用程序)可以使用Catalog.lookup()jar 从 jar 中找到正确的类并执行该功能。问题是每当我将返回值设置为 B.

我得到一个 java.lang.ClassCastException: Caused by: java.lang.ClassCastException: com.library.B cannot be cast to com.library.B

此应用程序还从同一库中检索对象模型。我假设问题是由于类加载器,应用程序由一个类加载器加载,而 jar 由“FunctionArchiveDeployer”加载。无论如何围绕这个?还是我在这里错过了一些完全不同的东西?

0 投票
0 回答
262 浏览

spring-boot - Junit5 使用 WebTestClient 失败的 Spring 功能

我已经编写了一个 Spring 函数,并且能够运行 junit 来验证函数。但是,如果我尝试运行 junit 来测试与 Http 端点相同的功能,则会引发以下错误。

函数 Bean 如下所示:

失败的 Junit 代码如下所示:

在junit之上运行时,抛出以下错误

有什么建议为什么会出现这个错误?

0 投票
1 回答
376 浏览

spring-cloud - Spring Cloud 2020.0.0 中的 Spring Cloud Bus/Stream 问题

我们有一个 Spring Boot 微服务,除了 HTTP 端点使用 Spring Cloud Bus 来获取刷新事件(来自 rabbit),还有一个 Spring Cloud Stream Sink 可以从另一个 rabbit 主题中获取自定义消息。

在更新到 Spring Boot 2.4.1 和 Spring Cloud 2020.0.0 之后,一切似乎都在工作,直到我们发现 Spring Cloud Bus 不再接收事件。对此进行调查,结果发现一些 Spring Cloud Bus 内部通道没有被创建。

这在另一个没有流功能的服务中没有发生,所以我们测试了禁用它,然后总线功能开始工作。所以这显然是旧式流模型和新的 Spring Cloud Bus 之间的某种干扰。

在更新我们的接收器以使用新的功能模型后,我仍然遇到问题,最终通过在我们的 application.yml 中包含以下几行来让两者都工作:

所以我有以下问题

  1. 我是否遗漏了什么,或者是否应该有更好的文档来说明流/总线如何相互影响以及迁移到 2020.0.0?
  2. 我当前的配置看起来正确吗?
  3. 必须在此处包含 busConsumer 似乎是不对的 - 它的自动配置是否应该不能与任何其他流配置“组合”?
  4. spring.cloud.stream.function.definition和有什么区别spring.cloud.function.definition?我在文档中都看到过,而且 Spring Cloud Bus 似乎也在设置spring.cloud.function.definition=busConsumer