Construir aplicações que precisam dimensionar leituras e escritas de forma independente é desafiador com padrões CRUD tradicionais. Esta skill fornece templates e padrões CQRS prontos para uso para separar responsabilidades de comando e consulta, permitindo desempenho otimizado para cargas de trabalho intensivas de escrita e leitura.
Télécharger le ZIP du skill
Importer dans Claude
Allez dans Paramètres → Capacités → Skills → Importer un skill
Activez et commencez à utiliser
Tester
Utilisation de "cqrs-implementation". Como separo operações de leitura e escrita na minha aplicação Python?
Résultat attendu:
- CQRS separa sua aplicação em dois modelos distintos: Comandos (operações de escrita que alteram estado) e Consultas (operações de leitura que retornam dados). A skill fornece templates Python mostrando como implementar manipuladores de Comando e Consulta, um barramento de comandos para despacho e modelos de leitura separados otimizados para padrões de consulta específicos.
- Componentes principais incluem: classe base de Comando com validação, interface de CommandHandler, CommandBus para roteamento, classe base de Consulta, QueryHandler para recuperação de dados e ReadModelSynchronizer para manter visualizações atualizadas.
Utilisation de "cqrs-implementation". Mostre-me como lidar com o atraso entre escrever dados e ler de volta
Résultat attendu:
- Isso é chamado de consistência eventual. A skill inclui um padrão ConsistentQueryHandler que pode esperar o modelo de leitura acompanhar após uma escrita. Ele polled a versão da projeção e retries até atingir a versão esperada, com um tempo limite configurável.
- Se o tempo limite expirar, ele retorna os dados desatualizados com um aviso para que sua aplicação possa decidir se continua ou notifica o usuário.
Audit de sécurité
SûrStatic analysis detected 30 potential issues, but all are false positives. The scanner misidentified markdown code fences as shell execution, database queries as network fetches, documentation URLs as suspicious, and sort order strings as weak cryptography. This is a legitimate CQRS educational skill with Python code templates. No actual security risks identified.
Score de qualité
Ce que vous pouvez construire
Construir Plataforma de E-commerce de Alto Desempenho
Separar processamento de pedidos (escritas) da navegação do catálogo de produtos (leituras) para lidar com picos de tráfego da Black Friday com diferentes estratégias de dimensionamento.
Implementar Dashboard de Análise em Tempo Real
Criar modelos de leitura otimizados para consultas complexas de agregação enquanto mantém operações de escrita simples para pipelines de ingestion de dados.
Migrar Aplicação Monolítica para Arquitetura Orientada a Eventos
Introduzir CQRS incrementalmente para separar preocupações e preparar capacidades futuras de event sourcing.
Essayez ces prompts
Ajude-me a configurar uma estrutura básica de CQRS em Python. Preciso de classes base de comando e consulta, um barramento de comandos e manipuladores simples para um domínio de gerenciamento de usuários.
Mostre-me como implementar uma projeção de modelo de leitura que mantém um perfil de usuário desnormalizado em sincronia com eventos de domínio. Inclua gerenciamento de checkpoint para resiliência.
Crie uma aplicação FastAPI com endpoints POST/DELETE separados para comandos e endpoints GET para consultas, usando injeção de dependência para barramentos de comandos e consultas.
Implemente um manipulador de consultas que possa esperar pela sincronização do modelo de leitura após uma operação de escrita, com tempo limite e aviso de dados desatualizados para consistência de leitura após escrita.
Bonnes pratiques
- Comece com uma fronteira clara entre comandos e consultas - não misture lógica de leitura e escrita no mesmo manipulador
- Desenhe modelos de leitura especificamente para seus padrões de consulta em vez de tentar criar uma visualização única
- Implemente manipuladores de comandos idempotentes para permitir retries seguros durante falhas de rede
Éviter
- Consultar o banco de dados de escrita dentro de manipuladores de comandos - comandos devem apenas validar e persistir, nunca ler para lógica de negócios
- Criar um único modelo de leitura que tente servir todos os padrões de consulta - isso defeats o propósito de modelos de leitura otimizados
- Ignorar consistência eventual e assumir disponibilidade imediata de leitura após escrita sem manipulação adequada