microservices-patterns
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
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
Zainstaluj umiejętność w swoim środowisku agenta, dodając ją do konfiguracji wtyczek backend-development.
Zacznij od określenia, czy rozkładasz istniejący monolityczny system czy projektujesz nową architekturę rozproszoną. Umiejętność wspiera oba scenariusze.
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.
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.
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.
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.