Toolverse
Wszystkie skille

common-technical-practices

autor: TencentBlueKing

Wzorce backend'u: AOP, blokady rozproszone, retry, monitoring i audyt w Spring Boot

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Kategoria
Mobile
Wyświetlenia
6

O skillu

Skill zawiera 7 kluczowych praktyk dla developerów backend'u pracujących z Spring Boot. Obejmuje aspekty AOP do przechwytywania logiki, rozproszone blokady Redis do kontroli współbieżności, mechanizmy retry z algorytmami wycofywania, walidację parametrów, monitoring wydajności przez Micrometer, zaplanowane zadania oraz audyt operacji. Każda praktyka jest dokumentowana z przykładami kodu i wytycznymi implementacji.

Jak używać

  1. Zidentyfikuj problem, który chcesz rozwiązać: czy potrzebujesz dodać logikę przecinającą wiele modułów (AOP), kontrolować dostęp do zasobu współdzielonego (blokady rozproszone), obsługiwać przejściowe błędy (retry), walidować dane wejściowe (parametry), śledzić wydajność (monitoring), uruchamiać operacje o określonej porze (zadania zaplanowane) czy rejestrować działania użytkowników (audyt).

  2. Przejrzyj odpowiednią sekcję dokumentacji skill'u: każdy z 7 tematów ma dedykowany plik referencyjny (np. 1-aop-aspect.md dla AOP, 2-distributed-lock.md dla blokad, 3-retry-mechanism.md dla retry).

  3. Zapoznaj się z plikami źródłowymi w repozytorium: dla AOP sprawdź katalog aop/, dla blokad rozprosonych przejrzyj common-redis/, dla retry użyj RetryUtils.kt, dla audytu zobacz common-audit/.

  4. Zastosuj wybraną praktykę w swoim kodzie Spring Boot: użyj adnotacji @Aspect do definiowania cięć, Redis do implementacji blokad, RetryUtils do konfiguracji strategii ponawiania, JSR-303 do walidacji, Micrometer do zbierania metryk, @Scheduled do planowania zadań, a common-audit do śledzenia operacji.

  5. Jeśli potrzebujesz narzędzi niższego poziomu (JWT, wyrażenia, pule wątków), zamiast tego skorzystaj ze skill'u utility-components — ta praktyka skupia się na wzorcach na poziomie framework'u, nie na komponentach użytkowych.

Podobne skille