Pular para o conteúdo
Skillpedia
APIs e servidores (backend)48 mil · #2374

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

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/azure-servicebus-rust/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/azure-servicebus-rust/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
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-rust

Ou 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.md
Conteú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_servicebus publicado 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_core diretamente, adicione azure_core a Cargo.toml. Se você usar apenas re-exports de azure_messaging_servicebus, a dependência direta de azure_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".

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#2374
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas