技能 Azure Queue Storage SDK for Python
📦

Azure Queue Storage SDK for Python

安全

在 Python 中管理 Azure Queue Storage

使用 Azure Queue Storage SDK 实现可靠的消息队列和异步处理。此技能提供用于任务分发、后台作业处理和解耦应用程序通信的生产就绪模式。

支持: Claude Codex Code(CC)
🥉 73 青铜
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“Azure Queue Storage SDK for Python”。 如何向队列发送 JSON 消息?

预期结果:

导入 json 并使用 queue_client.send_message(json.dumps({'task': 'process', 'id': 123}))。队列会将 JSON 存储为字符串。使用 json.loads(message.content) 检索它。

正在使用“Azure Queue Storage SDK for Python”。 receive_messages 和 peek_messages 有什么区别?

预期结果:

receive_messages 使消息对其他消费者不可见(锁定进行处理),而 peek_messages 仅读取它们而不影响可见性。使用 peek 进行监控,使用 receive 进行实际处理。

正在使用“Azure Queue Storage SDK for Python”。 如何处理反复失败的毒化消息?

预期结果:

检查 message.dequeue_count - 如果超过阈值,将消息移动到死信队列而不是重试。这可以防止错误消息无限循环。

安全审计

安全
v1 • 2/25/2026

Prompt-only skill containing documentation and code examples for Azure Queue Storage SDK. No executable code or scripts present. Static analysis scanned 0 files with 0 suspicious patterns detected. All content is educational reference material for legitimate Azure SDK usage. No security concerns identified.

0
已扫描文件
0
分析行数
0
发现项
1
审计总数
未发现安全问题
审计者: claude

质量评分

38
架构
100
可维护性
87
内容
50
社区
100
安全
83
规范符合性

你能构建什么

后台任务处理

将长时间运行的任务排队供工作进程异步处理。适用于需要卸载大量计算或批处理作业的 Web 应用程序。

微服务通信

实现微服务之间可靠的基于消息的通信。使用队列解耦服务,实现容错异步消息传递。

作业队列管理

实现分布式任务调度和作业队列系统。通过可见性超时控制在多个工作进程之间管理工作分配。

试试这些提示

创建队列
帮我使用 QueueServiceClient 创建一个名为 'tasks' 的 Azure Queue Storage 队列。展示使用 DefaultAzureCredential 的身份验证设置。
发送带选项的消息
展示如何向 'tasks' 队列发送消息,设置 5 分钟可见性超时和 24 小时生存时间。消息内容应为 JSON。
可靠地处理消息
编写一个函数,接收最多 10 条消息,逐条处理,仅在成功处理后删除它们。正确处理错误。
异步队列操作
将此队列处理代码转换为使用 azure.storage.queue.aio 中的异步 QueueClient。展示异步上下文管理器模式。

最佳实践

  • 成功处理后始终删除消息,防止重新处理和队列杂乱
  • 根据实际处理时间加上安全余量设置可见性超时
  • 监控 dequeue_count 以检测和处理毒化消息,避免消耗资源
  • 使用 peek_messages 进行监控和调试,不影响消息可见性

避免

  • 接收消息后不删除会导致重复工作和队列膨胀
  • 可见性超时设置过短会导致消息在处理完成前重新出现
  • 忽略 dequeue_count 会导致格式错误或无法处理的消息无限重试
  • 在应该使用 peek_messages 进行监控时使用了 receive_messages

常见问题

Queue Storage 和 Service Bus 有什么区别?
Queue Storage 更简单且成本效益更高,适用于基本消息队列。Service Bus 提供高级功能,如主题、会话和事务。对于简单任务队列使用 Queue Storage。
如何安全地处理身份验证?
使用 azure-identity 中的 DefaultAzureCredential。它支持多种身份验证方法,并根据环境自动选择正确的方法。
如果我忘记删除消息会发生什么?
消息在可见性超时到期后会再次可见。它将被重新处理,可能导致重复工作。成功处理后始终删除。
我可以在消息中发送二进制数据吗?
可以。在创建 QueueClient 时使用 BinaryBase64EncodePolicy 和 BinaryBase64DecodePolicy 来自动处理二进制消息。
一次可以检索多少条消息?
使用 receive_messages 中的 messages_per_page 参数。每批最多 32 条消息。对于更大的数量,进行多次调用。
此技能与异步 Python 兼容吗?
支持。从 azure.storage.queue.aio 导入异步客户端。所有操作都有异步版本(await client.send_message,async for in receive_messages)。

开发者详情

文件结构

📄 SKILL.md