amazon-web-services - AWS SQS 总是返回 1 条消息(PHP 开发工具包)
问题描述
我在使用 AWS SQS 的 receiveMessage 功能时遇到问题。它总是返回 1 条随机消息
$result = $client->receiveMessage(array(
'MaxNumberOfMessages' => 10,
'MessageAttributeNames' => ['All'],
'QueueUrl' => AConfig::sqs_query_url, // REQUIRED
'WaitTimeSeconds' => 10,
));
请给个建议:(
还有一个问题:无论如何都要按 sender_id 过滤消息吗?
谢谢!
解决方案
这是因为 AWS SQS 的性质。您的消息在一个队列中不是物理的,它们在内部分布在不同的队列中。
因此,文档说明如下:
[...] 如果队列中的消息数量很少(少于 1,000 条),您收到的消息很可能比每次 ReceiveMessage 调用请求的消息少。[...]
有关更多详细信息,请查看AWS SQS - 文档。
推荐阅读
- redux-saga - yield 和 yield put() 函数的区别
- html - 为什么 CSS Grid 的自动填充属性在列方向上不起作用
- csv - 使用 Ansible 更新 csv 文件
- robotframework - 拖放关键字似乎在 Selenium2Library 中不起作用?
- sql - 如何在sql server中检查和更改自定义字符串
- azure - 下载我的 Bot 源代码后,如何在本地运行 Microsoft Web App Bot?
- python - 如何将密钥发送到隐藏的密码框
- javascript - 如何将 http:// 替换为 Tel:
- javascript - 如何替换 css 类内容?
- java - Primefaces 对话框在网页中将标题和内容显示为文本