Effective Microservices: 10 Best Practices
Autor bardzo zwięźle wprowadza 10 praktyk, które uważa za najważniejsze w tworzeniu microserwisów. Trudno się z nim nie zgodzić. Tekst zachęca do pogłębienia wiedzy i szukania dalej ;) Krótkie podsumowanie: Microservice best practices:
1. Domain Driven - odpowiedni podział systemu na serwisy tak aby minimalizować ich powiązania, najlepiej zgodnie z domeną problemu
2. Database per Microservice - jeżeli serwis musi coś przechowywać powinien mieć własny storage, nie synchronizuj serwisów przez bazę
3. Micro Frontends - pomysł na microserwisy nie powinien ograniczać się tylko do backendu
4. Continuous Delivery - klocków do osadzania jest dużo, bez przemyślanych narzędzi automatyzacji tego będzie bum
5. Monitoring - wykorzystanie dedykowanych narzędzi pomaga (ELK, Splunk, Prometheus, Zipkin...). Te drzwi są już otwarte, nie wybyjaj ich na nowo
6. Unified Tech Stack - nie przesadzaj z różnorodnością technologii bo utoniesz
7. Asynchronous Comms - od początku zakładaj asynchroniczną komunikację gdzie się da
8. Microservice First - pomyśl o microserwisach od początku (jeżeli możesz) nie zostawiaj wydzielania serwisów na potem
9. Infrastructure over Libraries - zbyt mocne przywiązanie się do bibliotek może Cię wpędzić w kłopoty, wykorzystuj infrastrukturę gdzie się da (np. Service Mesh)
10. Organizational Considerations - bierz pod uwagę możliwości zespołu - to jest chyba prawdziwe nie tylko w przypadku microservice...
Jak pociąć front na mikroserwisy?
Artykuł opisuje na czym polega microfrontends oraz jak usunąć wady tego podejścia.
Microservices With Spring Cloud Kubernetes
Korzystasz z Kubernetesa? Sprawdź jakie wsparcie oferuje Spring w zakresie servicediscovery i konfiguracji aplikacji!