#31 Spring Boot – Zuul – API Gateway

API Gateway to wzorzec integracyjny. W wzorcu tym, tylko jeden serwis (może być oczywiście replikowany) udostępniony jest publicznie. Klientami naszego API mogą być aplikacje mobilne, strony web lub inne urządzenia. Musimy zapewnić im możliwość korzystania z naszego API w sposób zunifikowany. Aby to osiągnąć udostępniamy jeden publiczny serwis zwany API Gateway, który odpytywany przez różnych klientów zajmuje się kierowaniem ruchu na podstawie filtrów i określonych routingów.

Czytaj dalej


#0 Spring Basic – o co chodzi z tym Springiem

Rozpoczynamy kolejny cykl wpisów. Tym razem na tapecie framework Spring. Zamierzamy przedstawić wam podstawowe funkcjonalności Spring’a. Wiele osób zaczyna przygodę ze Spring’iem od Spring Boot’a, bez zrozumienia co dzieje się pod spodem. Poruszymy tematy takie jak tworzenie beanów, zasięg beanów czy rodzaje wstrzykiwania zależności. Jednakże, na początek zapraszamy na wpis wprowadzający do Spring’a,

Czytaj dalej


#27 Spring Boot – Consumer Driven Contract

Z każdym kolejny mikroserwisem testowanie naszej aplikacji staje się coraz bardziej trudne (w przypadku gdy są one ze sobą powiązane). Oczywiście możemy zamokować zachowanie innych serwisów korzystając na przykład z biblioteki WireMock, jednakże po wdrożeniu naszej aplikacji na produkcję okazuje się, że aplikacja nie integruje się poprawnie. A no właśnie, okazało się, iż mój serwis odpytywał zły endpoint, ale jak to możliwe, skoro wszystkie testy były uzależniająco zielone?

Czytaj dalej


#26 Spring Boot – Neo4j

W poprzednim wpisie pokazałam jak zainstalować Neo4j. Teraz możemy spróbować napisać prostą aplikację z użyciem Spring Boot’a, która wykorzystuje bazę grafową Neo4j.  Dzięki wykorzystaniu Spring Data otrzymujemy całą abstrakcję związaną z warstwą persystencji. Ponadto operacje CRUD’owe wywoływane są w taki sam sposób jak dla innych, znanych nam typów baz.

Czytaj dalej


#21 Spring Boot – integracja z RabbitMQ

W tym wpisie przedstawię wam jak zintegrować bezpośrednio naszą aplikację z RabbitMQ. Stosowanie kolejek w naszym ekosystemie ma wiele zalet. Dzięki zrównolegleniu pracy możemy w łatwy sposób skalować naszą aplikację. Jednocześnie wysyłając zadania na kolejkę powodujemy, iż nasz system staje się bardziej odporny, ponieważ zadania w pierwszej kolejności trafiają na kolejkę i zostaną z niej pobrane dopiero wtedy, gdy dostępni będą konsumenci tych wiadomości.

Czytaj dalej