我们有一个使用 gcp Secret Manager 的 Spring Boot 微服务,我们遇到了连接重置和超时的问题。通常我们在测试中模拟整个客户端,但在这里我们希望保留客户端并模拟 gcp 服务来测试重试和错误处理。
我们使用谷歌客户端
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-secretmanager</artifactId>
<version>2.28.0</version>
</dependency>
有没有什么好的工具或例子可以做到这一点?它可以是 gcp Secret Manager 或任何其他具有 gRPC 客户端的 GCP 服务。
我不是 Java 开发人员。
这应该很简单。
Google 的(云)客户端库允许您覆盖服务端点(即将
secretmanager.googleapis.com:443
替换为您自己的实现,例如 localhost:50051
)。
对于 Secret Manager,您可以配置客户端以指向您的实现:
SecretManagerService
您应该能够选择要测试和实现这些方法的子集。我不确定 Java,但是,为了只实现服务的子集,
protoc
应该(!?)生成一个 UnimplementedServer
方法,您可以使用它来消除服务器中的冗余方法。