问题标签 [spring-cloud-gcp]
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.
google-cloud-pubsub - 通过 Spring Cloud Stream 发布到 Pub/Sub 的持久性保证
我正在使用 Spring Cloud Stream 从 Google Pub/Sub 主题发送和接收消息,并且对发布有疑问。如果我有一个 @Output MessageChanel 并且我调用 channel.send(message) 并且调用正常返回(没有异常),我是否保证 Pub/Sub 现在有消息?我正在寻找类似于 JMS 系统中的“持久”消息保证的东西。
我似乎记得有可以为发布配置的批处理参数和/或异步设置,我还想知道这一切如何影响担保人(如果有的话)。这些似乎会使通过 channel.send 发送单个消息的任何保证复杂化。
谢谢。
java - Spring Cloud GCP PubSub DLQ(死信队列)使用 Spring Integration
我目前正在使用以下方法集成 PubSub https://docs.spring.io/spring-cloud-gcp/docs/1.2.4.BUILD-SNAPSHOT/reference/html/#spring-integration
基本上我订阅了一个主题,我收到消息并用它做一些事情。
如果我的业务规则出现任何错误情况(例如因为 X、Y、Z 原因不接受消息),我想将其发送到 dlq。
我看到就在一个半月前,谷歌推出了用于 PubSub 的 DLQ:https ://cloud.google.com/pubsub/docs/dead-letter-topics
但我不确定将它与 spring 集成方法集成的正确方法应该是什么。
java - Spring Firestore 乐观锁(数据版本控制)
我正在寻找为 Firestore DB 文档启用乐观锁定的方法,但似乎@Version
注释不起作用。
目前我正在使用spring-cloud-gcp-starter-data-firestore
lib 来扩展FirestoreReactiveRepository
接口存储库。我查看了 spring cloud gcp 文档,并没有发现任何关于乐观锁定和数据版本控制的信息(例如使用文档的 modificatioNumber 字段)。
我是有人知道有没有办法使用spring libs或其他一些libs以声明方式(使用一些注释)或以编程方式启用Firestore DB文档的乐观锁定?谢谢。
spring-boot - Spring Boot 和 GCP:没有 org.springframework.cloud.gcp.secretmanager.SecretManagerTemplate 类型的合格 bean
连接到 GCP 以从秘密管理器获取秘密时出错,但不知何故它对我不起作用。
运行应用程序时出现错误:
没有 org.springframework.cloud.gcp.secretmanager.SecretManagerTemplate 类型的合格 bean
我正在使用如下 SecretManagerTemplate 来获取秘密:
细节:
- Spring Boot 版本:2.1.8
- Spring Cloud 版本:Greenwich.RELEASE
- Spring Cloud GCP 版本 1.2.5.RELEASE
注意:我不想升级 Spring Boot 版本。
请帮忙。
spring-boot - Google Cloud Datastore:按属性列表查询
我正在寻找如何通过属性列表在数据存储中查询的方法。
所以,我有一个简单的实体:
我想通过列表进行查找appIds
。但是,似乎 Datastore 不提供这种可能性。
DatastoreTemplate
仅提供一种可能性 -findAllById
但它既不适用于其他字段,也不适用于其他过滤器(例如按状态)。
不幸的是,StructuredQuery.PropertyFilter
也不提供这种可能性。
StructuredQuery.CompositeFilter
有 onlyand
但没有既没有or
也没有in
。
可能有人面临同样的问题并以某种方式解决它?
java - 如何将 Camel google-pubsub-component 连接到 Pubsub 模拟器?
我已经尝试了几个小时未能成功获取我的 Spring Boot 应用程序的 Camel 路由(通过 Camel 组件camel-google-pubsub连接到Google Pubsub Emulator的本地实例。
- 我的模拟器正在运行:
我的 env var没问题:为了避免连接到真正的 PubSub 实例
PUBSUB_EMULATOR_HOST=localhost:8085
,我已禁用GOOGLE_APPLICATION_CREDENTIALS
我的骆驼路线:
- 我的
application-dev.yml
:
最后,当我尝试在本地运行我的应用程序时,我的控制台输出是这样的:
如果有人已经成功地将 pubsub 模拟器与他们的 Camel 路由一起使用,我对您的解决方案很感兴趣。
spring-boot - Spring Boot + gcp datastore + datastore 模拟器获取 INVALID_ARGUMENT 遇到“OR”/“IN”
我有一个在 App Engine 标准环境中运行的应用程序,它使用 Google Cloud Tools 和 Datanucleus 框架来访问数据。
当我在本地环境中运行此应用程序时,它可以正常工作,并且当我在 Where 子句中使用 OR 或 IN 进行 Select 时,它会毫无问题地返回表的寄存器。
现在,我想改进我的应用程序并使用 Spring Boot、Spring Cloud GCP 和本地 Cloud Datastore Emulator 创建一个新应用程序。当我尝试对 Datastore Emulator 进行查询时,它可以正常工作,但是当查询具有 IN 或 OR 时,模拟器会记录和错误。
查询是:
和错误文本:
Datastore Emulator 可以使用 OR 或 IN 子句进行查询吗?
有没有办法以不同的方式做到这一点?
java - 未安装提供程序“gs”
我在这里找到了两个类似的帖子,但一个没有得到回答,另一个是关于 android 的。我有一个 Spring Boot 项目,我想在我的应用程序中访问 GCP 存储文件。
在本地一切正常,我可以访问我的存储桶并在我的存储中读取和存储文件。但是当我将它上传到 gcp kubernetes 时,我得到以下异常:
“java.nio.file.FileSystemNotFoundException:提供程序“gs”未安装在 java.nio.file.Paths.get(Paths.java:147) ~[na:1.8.0_212] 在 xx.xx.StorageService.saveFile(StorageService .java:64) ~[classes!/:0.3.20-SNAPSHOT]
我出现的代码行如下:
}
completePath 可能导致类似“gs://my-storage/path/to/file/image.jpg”
我有以下依赖项:
有谁知道在哪里看?除了基础设施之外,唯一真正的区别是我没有明确不在 kubernetes 上使用身份验证,因为根据文档,它不是必需的
在 Google Cloud Platform 环境(例如 Compute Engine、Kubernetes Engine 或 App Engine)中使用 Google Cloud 库时,无需额外的身份验证步骤。