К основному содержанию
промпт GP ChatGPT

Event-Driven Architecture taste — промпт для ChatGPT: что делает

Задаёт набор правил распределённых систем: использование событий в прошедшем времени, outbox паттерн, идемпотентные консьюмеры и саги вместо распределённых транзакций.

Открыть на GitHub

Что делает Event-Driven Architecture taste

Промпт содержит свод инженерных установок с оценками уверенности для проектирования асинхронных сервисов. Он разграничивает факты и команды: события сообщают о совершённых действиях (OrderPlaced), а команды адресуются единственному владельцу (ChargeCard). Правила требуют версионировать схемы через Avro, Protobuf или JSON Schema с проверкой совместимости в CI.

Для надёжности пересылки предписан паттерн transactional outbox, устраняющий расхождения между базой данных и очередями. Консьюмеры строятся идемпотентными с ключом дедупликации, а сбойные сообщения уходят в dead-letter queue после ограниченных повторов с экспоненциальной задержкой. Для координации многошаговых процессов используются саги с явными компенсирующими действиями.

Без обязательного correlation id и контекста трассировки в заголовках сквозная диагностика цепочки событий ломается.

Какие задачи решает

  • разграничить доменные события и команды управления в архитектуре сервисов
  • исключить расхождения между базой данных и брокером через transactional outbox
  • настроить идемпотентную обработку входящих очередей с ключами дедупликации
  • заменить распределённые транзакции сагами с компенсирующими действиями

Примеры запросов агенту

  • Спроектируй схему публикации событий для сервиса заказов с учётом паттерна outbox.
  • Проверь архитектуру обработки очередей и предложи стратегию изоляции poison messages через DLQ.
  • Составь структуру конверта события с обязательными correlation id и causation id.

Как установить Event-Driven Architecture taste

Как использовать

Вставьте текст в начало диалога или в инструкции проекта

Вопросы о Event-Driven Architecture taste

Как установить Event-Driven Architecture taste в Claude Code?

Сохраните команду в файл .claude/commands/prompts.csv.md. Для работы в ChatGPT скопируйте текст промпта в окно диалога или в пользовательские инструкции.

Что делает Event-Driven Architecture taste?

Промпт задаёт строгие архитектурные принципы: transactional outbox, идемпотентность консьюмеров, версионирование схем через Avro или Protobuf и изоляцию сбойных сообщений в DLQ.

Какие метаданные должны входить в конверт каждого события?

В каждый конверт включаются идентификатор события, тип, версия, отметка времени, а также correlation id и causation id.

Исходный текст

prompts.csv · CC0-1.0
# Event-Driven Architecture taste of a distributed systems engineer
- Use events to announce facts that already happened (OrderPlaced), and commands only for requests to a single owner (ChargeCard). Confidence: 0.90
- Name events in the past tense using domain language, never after the producing table or service. Confidence: 0.85
- Define every event with a versioned schema (Avro, Protobuf or JSON Schema) in a registry and check compatibility in CI. Confidence: 0.90
- Evolve schemas only with backward-compatible changes; publish a new event type for breaking changes. Confidence: 0.85
- Assume at-least-once delivery and make every consumer idempotent with a deduplication key. Confidence: 0.95
- Publish events through the transactional outbox pattern so database writes and messages never diverge. Confidence: 0.90
- Include event id, type, version, timestamp, correlation id and causation id in every envelope. Confidence: 0.85
- Keep event payloads self-contained enough for common consumers, but do not dump whole aggregates. Confidence: 0.75
- Partition by aggregate id when ordering matters, and never rely on global ordering. Confidence: 0.85
- Route poison messages to a dead-letter queue after bounded retries with exponential backoff and jitter. Confidence: 0.90
- Alert on consumer lag and dead-letter queue depth, not just on broker health. Confidence: 0.90
- Propagate trace context through message headers so one request can be followed across services. Confidence: 0.85
- Use sagas with explicit compensating actions for multi-service workflows instead of distributed transactions. Confidence: 0.80
- Prefer choreography for simple flows and a dedicated orchestrator once a workflow has more than a few steps. Confidence: 0.70
- Reach for event sourcing only where an audit trail or temporal queries are real requirements. Confidence: 0.75
- Make replays safe: consumers must tolerate reprocessing history from any offset. Confidence: 0.80
- Set retention to match how long consumers might need to rebuild state, and document it per topic. Confidence: 0.70
- Give each topic one owning team that controls its schema and lifecycle. Confidence: 0.85
- Keep synchronous calls for queries that need an immediate answer; do not force request-response through a queue. Confidence: 0.80
- Test consumers with contract tests against the registered schema and producers with outbox integration tests. Confidence: 0.80
- Keep a living catalog (AsyncAPI or similar) of topics, producers and consumers. Confidence: 0.75

© f · CC0-1.0 · f/prompts.chat

Похожие промпты

Все промпты по теме «Бэкенд и API» →

Из того же набора143

Весь набор →
SwiftUI iOS App taste Набор правил для SwiftUI-проекта: как строить экраны, где хранить состояние и что делать с устаревшими API. Пригодится, когда агент пишет новый код для iOS. GP ChatGPT ★ 174 676звёзд репо Code Review taste Промпт задаёт подход к ревью: проверять корректность и риски, давать понятные комментарии и не тратить их на форматирование. Пригодится для обсуждения pull request. GP ChatGPT ★ 174 676звёзд репо Universal LLM Operating Guidelines Набор правил для ИИ-кодинга: сначала разобраться в задаче, потом менять код. Снижает выдуманные API и лишние правки. GP ChatGPT ★ 174 676звёзд репо Web Accessibility taste Задаёт правила доступности интерфейсов для фронтенд-разработки. Помогает писать семантичный код и правильно настраивать клавиатурную навигацию. GP ChatGPT ★ 174 676звёзд репо Redis Caching taste Промпт задаёт ИИ-ассистенту набор правил работы с Redis: cache-aside, TTL с джиттером, инвалидация после записи. Пригодится, когда проектируешь кэш и не хочешь забыть про stampede и утечки памяти. GP ChatGPT ★ 174 676звёзд репо GraphQL API taste Свод правил, по которым агент проектирует GraphQL-схему от клиентских сценариев, а не от таблиц базы. Пригодится, когда API уже есть, но схема разъезжается с нуждами фронтенда. GP ChatGPT ★ 174 676звёзд репо Shell Scripting taste Промпт задаёт инженеру или модели правила надёжного написания скриптов на Bash. Он помогает писать предсказуемый код с обработкой ошибок и проверками через ShellCheck. GP ChatGPT ★ 174 676звёзд репо Web Performance taste Промпт задаёт фронтенд-разработчику ориентиры по скорости сайта: от Core Web Vitals на реальных пользователях до размера JavaScript и загрузки изображений. GP ChatGPT ★ 174 676звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой