Consumer-Driven Contracts

Jeśli robisz mikroserwisy, udostępniasz publiczną usługę albo po prostu korzystasz z jakiegoś API to na pewno masz do czynienia z kontraktami. Kontrakt to umowa komunikacyjna pomiędzy klientem a serwerem, która ma to do siebie, że bardzo łatwo ją złamać. Mała poprawka na API, szybkie wdrożenie i ... (BOOM!!!) serwer odpowiada inaczej niż spodziewał się tego klient. Niesie to ze sobą szereg konsekwencji, a duża liczba usług, częste wdrażanie oraz rozproszone zespoły tylko pogarszają sytuację. Co wtedy robić? Oczywiście próbować nie dopuszczać do takiej sytuacji, pytanie jak? Czy w ogóle jesteśmy w stanie uchronić klienta przed zmianą kontraktu? Rozwiązaniem tej bolączki jest Consumer-Driven Contracts. Wzorzec, który wyjaśnia dlaczego dochodzi do takich sytuacji, jak możemy sobie z nimi radzić oraz w jaki sposób doprowadzić do pełnej ewolucji naszych usług.

powrót
Jędrzej Andrykowski Jędrzej Andrykowski

Na co dzień Software Developer oraz Team Leader w firmie Cinkciarz.pl. Związany głównie ze środowiskiem Java. Pasjonat szeroko pojętej automatyzacji testów oraz narzędzi z nią związanych. Entuzjasta Domain-Driven Design. Poza IT - gitarzysta i wielbiciel muzyki ekstremalnej.