Toolverse
All skills

microservices-patterns

by wshobson

Design microservices architectures with service boundaries, event-driven communication, and resilience patterns. Use when building distributed systems, decomposing monoliths, or implementing microservices.

Installation

Pick a client and clone the repository into its skills directory.

Installation

Quick info

Author
wshobson
Category
Backend
Views
106

About this skill

Design microservices architectures with service boundaries, event-driven communication, and resilience patterns. Use when building distributed systems, decomposing monoliths, or implementing microservices.

How to use

  1. Zainstaluj umiejętność w swoim środowisku agenta, dodając ją do konfiguracji wtyczek backend-development.

  2. Zacznij od określenia, czy rozkładasz istniejący monolityczny system czy projektujesz nową architekturę rozproszoną. Umiejętność wspiera oba scenariusze.

  3. Wybierz strategię dekompozycji usług: organizuj je wokół zdolności biznesowych (np. OrderService, PaymentService) lub zastosuj podejście Domain-Driven Design z ograniczonymi kontekstami. Dla stopniowego przejścia rozważ wzorzec Strangler Fig.

  4. Zdecyduj o sposobie komunikacji między usługami. Dla synchronicznej komunikacji request/response użyj REST, gRPC lub GraphQL. Dla asynchronicznej wybierz event streaming (Kafka), kolejki wiadomości (RabbitMQ, SQS) lub wzorce Pub/Sub.

  5. Zaplanuj zarządzanie danymi: każda usługa powinna posiadać własną bazę danych bez dzielenia schematów. Do obsługi transakcji rozproszonych zastosuj wzorzec Saga z akcjami kompensacyjnymi.

  6. Wdrożyć wzorce odporności: circuit breaker do szybkiego zawodzenia przy powtarzających się błędach, retry z exponential backoff do obsługi błędów przejściowych oraz bulkhead do izolacji zasobów i ograniczenia wpływu awarii na cały system.

Related skills