- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我打算向 SNS 发送消息,然后我发现了一个 AmazonSNSClient
。我试过了。
AWSCredentials credentials = new DefaultAWSCredentialsProviderChain()
.getCredentials();
AmazonSNSClient client = new AmazonSNSClient(credentials);
我让我的服务实例持有这个客户端以使其永远存在,但在某个时刻,错误开始发生。
com.amazonaws.AmazonServiceException:
The security token included in the request is expired
(Service: AmazonSNS; Status Code: 403; Error Code: ExpiredToken;
Request ID: d4bf427c-5b60-568b-a91c-0ea88356bc69)
显然,这是因为 AmazonSNSClient
的设计目的不是为了保持活力和多次使用。 AmazonSNSAsyncClient
似乎适合这种用法。
我的问题是 AmazonSNSAsyncClient
是线程安全的吗? AmazonSNSAsyncClient
是否预期在 token 请求未过期的情况下被多次使用?
感谢您阅读本文。
我问 AWS 支持 DynamoDB 上类似的问题,说,我必须使用 AWSCredentials 而不是 AWSCredentialsProvider。虽然这不是关于 SNSClient 的答案,但我认为它可能有效。
最佳答案
通过使用“new DefaultAWSCredentialsProviderChain().getCredentials()”,您可以在那个时间点拍摄 AWS 凭证的快照并将它们提供给 SNS 客户端。如果您发现在某个时间点后收到 ExpiredToken 错误,很可能是因为您依赖于 EC2 角色提供的轮换凭证。
不要将 AWSCredentials 传递到 SNS 客户端,而是尝试传递 DefaultAWSCredentialsProviderChain 的实例。这应该会在凭据过期时自动刷新凭据。
异步客户端也会遇到同样的问题。
关于java - AWS 的 AsyncClients in Java 线程安全且持久吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26772257/
我一直在寻找异步 java http 客户端。 我遇到了 Apache asyncClient并经历了以下examples . 因此在示例中,我们注册了一个回调对象,并在请求的响应返回时调用 comp
我正在使用 Aerospike AsyncClient 和 Aerospike UDF 模块使用多线程在 Aerospike 2 节点集群中插入 1000 万条记录。我遵循的步骤是: 创建了 10 个
我需要为用于从 API 获取数据的函数编写测试用例。在那里我使用 httpx.AsyncClient() 作为上下文管理器。但我不明白如何为该功能编写测试用例。 async def make_drop
我以为我禁用了在 Http 客户端中检查证书,但不断收到 SSLPeerUnverifiedException。 这是我的客户: import java.io.ByteArrayOutputStrea
我打算向 SNS 发送消息,然后我发现了一个 AmazonSNSClient。我试过了。 AWSCredentials credentials = new DefaultAWSCredentialsP
目前我有 Firebase 帐户设置。我希望通过 python asyncio 将项目添加到该项目的 firestore。 据我了解,包:python-firestore 确实通过 AsyncClie
目前我有 Firebase 帐户设置。我希望通过 python asyncio 将项目添加到该项目的 firestore。 据我了解,包:python-firestore 确实通过 AsyncClie
我是一名优秀的程序员,十分优秀!