azure-servicebus-rust
Ajuda seu agente a enviar e receber mensagens em sistemas usando Rust. É útil para comunicação robusta entre aplicações.
O que ela faz
Esta ferramenta permite que programas escritos em Rust enviem e recebam mensagens usando o Azure Service Bus. Ele funciona como um sistema de correio para que diferentes partes de um programa possam se comunicar de forma confiável.
Quando usar
- ✓Quando um programa em Rust precisa enviar ou receber dados de outros sistemas.
- ✓Para criar sistemas onde várias partes se comunicam trocando mensagens.
- ✓Para garantir que mensagens importantes não se percam e possam ser processadas mesmo se o programa falhar temporariamente.
Exemplo do que pedir para a IA
“Como faço para meu programa Rust enviar uma mensagem para a fila 'pedidos' no Azure Service Bus?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
O programa Rust se conecta ao Azure Service Bus usando credenciais. Ele pode então criar 'remetentes' para enviar mensagens para filas ou tópicos, e 'receptores' para ler mensagens dessas filas ou tópicos.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill azure-servicebus-rustOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/azure-servicebus-rust/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Biblioteca Azure Service Bus para Rust
Quando Usar
Use esta funcionalidade quando precisar da biblioteca Azure Service Bus para Rust. Envie e receba mensagens usando filas, tópicos e assinaturas. Gatilhos: "service bus rust", "ServiceBusClient rust", "send message servicebus rust", "receive message servicebus rust", "queue rust messaging", "topic subscription rust".
Biblioteca cliente para Azure Service Bus — broker de mensagens corporativo com filas e tópicos de publish-subscribe.
⚠️ AVISO: Este crate está em desenvolvimento inicial e NÃO DEVE ser usado em produção. APIs podem mudar sem aviso prévio.
Use esta funcionalidade quando:
- Um aplicativo precisar enviar ou receber mensagens via Azure Service Bus a partir do Rust
- Você precisar de mensagens baseadas em fila com consumidores concorrentes
- Você precisar de mensagens de publish-subscribe com tópicos e assinaturas
- Você precisar de entrega confiável de mensagens com semântica de conclusão
IMPORTANTE: Use apenas o crate oficial
azure_messaging_servicebuspublicado pelo usuário do crates.io azure-sdk. NÃO use crates não oficiais ou da comunidade. Crates oficiais usam underscores nos nomes e nenhum tem a versão 0.21.0.
Instalação
cargo add azure_messaging_servicebus azure_identity tokio
Se o seu código usar tipos
azure_corediretamente, adicioneazure_coreaCargo.toml. Se você usar apenas re-exports deazure_messaging_servicebus, a dependência direta deazure_coreé opcional.
Variáveis de Ambiente
SERVICEBUS_NAMESPACE=<namespace>.servicebus.windows.net # Required — fully qualified namespace
Conceitos Chave
| Conceito | Descrição |
|---|---|
| Namespace | Contêiner para todos os componentes de mensagens |
| Fila | Mensagens ponto a ponto com consumidores concorrentes |
| Tópico | Mensagens de publish-subscribe — um remetente, muitos assinantes |
| Assinatura | Recebe mensagens de um tópico |
| Mensagem | Pacote de dados e metadados, com semântica de conclusão/abandono |
Autenticação
use azure_identity::DeveloperToolsCredential;
use azure_messaging_servicebus::ServiceBusClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
// Local dev: DeveloperToolsCredential. Production: use ManagedIdentityCredential.
let credential = DeveloperToolsCredential::new(None)?;
let client = ServiceBusClient::builder()
.open("your_namespace.servicebus.windows.net", credential.clone())
.await?;
Ok(())
}
Fluxo de Trabalho Principal
Enviar uma Mensagem para uma Fila
use azure_identity::DeveloperToolsCredential;
use azure_messaging_servicebus::{ServiceBusClient, Message};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let credential = DeveloperToolsCredential::new(None)?;
let client = ServiceBusClient::builder()
.open("your_namespace.servicebus.windows.net", credential.clone())
.await?;
let sender = client.create_sender("my_queue", None).await?;
let message = Message::from("Hello, Service Bus!");
sender.send_message(message, None).await?;
Ok(())
}
Receber Mensagens de uma Fila
use azure_identity::DeveloperToolsCredential;
use azure_messaging_servicebus::ServiceBusClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let credential = DeveloperToolsCredential::new(None)?;
let client = ServiceBusClient::builder()
.open("your_namespace.servicebus.windows.net", credential.clone())
.await?;
let receiver = client.create_receiver("my_queue", None).await?;
let messages = receiver.receive_messages(5, None).await?;
for message in messages {
println!("Received: {}", message.body_as_string()?);
receiver.complete_message(&message, None).await?;
}
Ok(())
}
Enviar uma Mensagem para um Tópico
let sender = client.create_sender("my_topic", None).await?;
let message = Message::from("Hello, Topic subscribers!");
sender.send_message(message, None).await?;
Receber Mensagens de uma Assinatura
let receiver = client
.create_receiver_for_subscription("my_topic", "my_subscription", None)
.await?;
let messages = receiver.receive_messages(5, None).await?;
for message in messages {
…
Perguntas frequentes
O que é Azure Service Bus?
É um serviço da Microsoft que funciona como um intermediário de mensagens. Ele permite que diferentes aplicações enviem e recebam mensagens de forma confiável, mesmo que não estejam online ao mesmo tempo.
O que são filas e tópicos?
Filas são para comunicação ponto a ponto (uma mensagem vai para um receptor). Tópicos são para publicação/assinatura (uma mensagem pode ir para vários receptores interessados).
Posso usar isso em produção?
Não, este código ainda está em desenvolvimento inicial e não é recomendado para uso em produção. As funcionalidades podem mudar.
Detalhes
Descrição original do autor
Azure Service Bus library for Rust. Send and receive messages using queues, topics, and subscriptions. Triggers: "service bus rust", "ServiceBusClient rust", "send message servicebus rust", "receive message servicebus rust", "queue rust messaging", "topic subscription rust".
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2374
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
api-connector-builder
Faz seu agente construir novas conexões com APIs seguindo o padrão já existente. Use quando precisar adicionar mais uma integração sem criar um novo jeito de fazer.
affaan-m/ECC
api-design
Ajuda seu agente a projetar APIs REST seguindo as melhores práticas. É útil para definir como as APIs se comunicam, como os erros são mostrados e como organizar os dados.
affaan-m/ECC
backend-patterns
Ajuda seu agente com padrões de arquitetura do lado do servidor e otimização de banco de dados. É útil para construir ou revisar o código que roda no servidor.
affaan-m/ECC