xlab #8 - Architektura mikroserwisów na platformie Spring Boot

Preview:

Citation preview

Architektura mikroserwisów na platformie Spring Boot

www.xsolve.plAgile Software House

Projekt GitHub: github.com/xsolve-pl/xlab-8

www.xsolve.plAgile Software House

10:00 Poznajmy się10:30 Cel oraz wymagania warsztatowe11:00 Prezentacja cz.1 11:30 Przekazanie zadań grupom 11:40 Część praktyczna cz.112:30 Przerwa na kawę

Agenda

www.xsolve.plAgile Software House

12:45 Prezentacja cz.213:30 Obiad14:00 Część praktyczna cz.2 15:00 Prezentacje zespołów15:30 Q&A

Agenda

www.xsolve.plAgile Software House

Poznajmy się

www.xsolve.plAgile Software House

Alicja Smolnik ‘Alutka’

www.xsolve.plAgile Software House

Grzegorz Kukla ‘Grzekuk’

www.xsolve.plAgile Software House

Kamil Zieliński‘Dziki’

www.xsolve.plAgile Software House

Michał Witkowski ‘Majkel’

www.xsolve.plAgile Software House

Wymagania✓ JAVA 7+✓ Restful API✓ Spring Framework✓ Microservices✓ Gradle

www.xsolve.plAgile Software House

WymaganiaWykorzystywałem mikroserwisy w projektach komercyjnych

Wykorzystywałem Springa w projektach komercyjnych

Tworzyłem RESTful API w projekcie komercyjnym

Znane mi są wcześniej przedstawione technologie

Część technologii jest mi znana

www.xsolve.plAgile Software House

Microservices

www.xsolve.plAgile Software House

Microservices

www.xsolve.plAgile Software House

Monolity

www.xsolve.plAgile Software House

Mikroserwisy

www.xsolve.plAgile Software House

Monolity są prostsze, mam 1 aplikację, 1 bazę, wszystko co mi trzeba mam pod ręką…

www.xsolve.plAgile Software House

www.xsolve.plAgile Software House

www.xsolve.plAgile Software House

www.xsolve.plAgile Software House

Spring Cloud

Eureka

www.xsolve.plAgile Software House

CENTRALIZACJA USTAWIEŃ

(REPO, LOCAL STORAGE)

Spring Cloud Configuration Server

www.xsolve.plAgile Software House

CENTRALIZACJA USTAWIEŃ

BEZPIECZEŃSTWO

Spring Cloud Configuration Server

www.xsolve.plAgile Software House

CENTRALIZACJA USTAWIEŃ

BEZPIECZEŃSTWO

HISTORIA ZMIAN

Spring Cloud Configuration Server

www.xsolve.plAgile Software House

CENTRALIZACJA USTAWIEŃ

BEZPIECZEŃSTWO

HISTORIA ZMIAN

WYGODNA MIGRACJA

POMIĘDZY DEV, TEST, PROD

Spring Cloud Configuration Server

www.xsolve.plAgile Software House

Service “Discovery” - Eureka

No DNS - USE NAMES

“CZEŚĆ! NAZYWAM SIĘ SERWIS NOTYFIKACJI MIESZKAM NA LOCALHOST’CIE POD 8081…”

www.xsolve.plAgile Software House

www.xsolve.plAgile Software House

Metody HTTPGET - wykorzystujemy do pobierania danych

POST - służy do tworzenia nowych obiektów

PUT - do aktualizacji obiektów

DELETE - do usuwania obiektów

www.xsolve.plAgile Software House

REST - Representational State Transfer

www.xsolve.plAgile Software House

JSON vs. XML

www.xsolve.plAgile Software House

Projektowanie zasobów

[GET] http://localhost:8080/api/v1/users/10

[DELETE] http://localhost:8080/api/v1/users/10

[GET] http://localhost:8080/api/v1/developers/java/2

www.xsolve.plAgile Software House

Spring Boot

www.xsolve.plAgile Software House

.properties vs .yml

www.xsolve.plAgile Software House

Przydatne narzędzia podczas tworzenia architektury mikroserwisów

● Hystrix - Circuit breaker● Ribbon - Load Balancer● Zuul - Gateway, filter server● Feign - API client (hystrix + ribbon)

www.xsolve.plAgile Software House

Hystrix

www.xsolve.plAgile Software House

Przydatne narzędzia podczas tworzenia architektury mikroserwisów

● Hystrix - Circuit breaker● Ribbon - Load Balancer● Zuul - Gateway, filter server● Feign - API client (hystrix + ribbon)

www.xsolve.plAgile Software House

Monolith - Centralized Load Balancer

www.xsolve.plAgile Software House

Ribbon

www.xsolve.plAgile Software House

Przydatne narzędzia podczas tworzenia architektury mikroserwisów

● Hystrix - Circuit breaker● Ribbon - Load Balancer● Zuul - Gateway, filter server● Feign - API client (hystrix + ribbon)

www.xsolve.plAgile Software House

www.xsolve.plAgile Software House

OBIAD

OBIAD

www.xsolve.plAgile Software House

www.xsolve.plAgile Software House

www.xsolve.plAgile Software House

Thank you!

Recommended