MicroServices with Spring: Difference between revisions

From My Limbic Wiki
No edit summary
Line 9: Line 9:
! scope="col"| Server
! scope="col"| Server
! scope="col"| Zuul
! scope="col"| Zuul
! scope="col"| Image
! scope="col"| Image & Gallery
|-
|-
! scope="row"| Main
! scope="row"| Main
Line 22: Line 22:
  '''@EnableZuulProxy'''
  '''@EnableZuulProxy'''
|
|
  tofill
* com.microservices.image.'''EurekaImageApplication.java'''
  @SpringBootApplication
'''@EnableEurekaClient'''
* com.microservices.image.'''controllers.ImageController.java'''
'''@RestController'''
'''@RequestMapping("/")'''
'''@Autowired'''
    private Environment env;
* com.microservices.image.'''entities.Image.java'''
|-
|-
! scope="row"| Pom.xml
! scope="row"| Pom.xml
Line 38: Line 46:
  spring-boot : web, test, devtools & security  
  spring-boot : web, test, devtools & security  
|
|
  tofill
* Dependencies
  spring-cloud-starter-netflix-eureka-client
spring-boot : web, test & devtools
|-
|-
! scope="row"| Properties
! scope="row"| Properties

Revision as of 23:37, 20 September 2019

Vulgarization

Specificities in a Spring aborescence

Eureka

Is the registration service, all services will connect to the same adress: http://localhost:9000 for example

Fichiers Server Zuul Image & Gallery
Main
  • com.microservices.server.EurekaServerApplication.java
@SpringBootApplication
@EnableEurekaServer // Enable eureka server
  • com.microservices.zuul.EurekaZuulApplication.java
@SpringBootApplication
@EnableEurekaClient
@EnableZuulProxy
  • com.microservices.image.EurekaImageApplication.java
@SpringBootApplication
@EnableEurekaClient
  • com.microservices.image.controllers.ImageController.java
@RestController
@RequestMapping("/")
@Autowired
   private Environment env;
  • com.microservices.image.entities.Image.java
Pom.xml
  • Dependencies
spring-cloud-starter-netflix-eureka-server
spring-boot : web, test & devtools
  • Dependencies
groupId - org.springframework.cloud
  spring-cloud-starter-netflix-eureka-client
  spring-cloud-starter-netflix-zuul
groupId - fr.dalichamp.microservices.common
  SpringEurekaCommon
spring-boot : web, test, devtools & security 
  • Dependencies
spring-cloud-starter-netflix-eureka-client
spring-boot : web, test & devtools
Properties
# Name
spring.application.name=eureka-server
# Default Port
server.port=8761
# Eureka server may not be a Client
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
server.port=8762
spring.application.name=zuul-server
eureka.client.service-url.default-zone=http://localhost:8761/eureka/
# A prefix that can added to beginning of all requests. 
#zuul.prefix=/api
# Disable accessing services using service name (i.e. gallery-service).
zuul.ignored-services=*
# Map paths to services
zuul.routes.gallery-service.path=/gallery/**
zuul.routes.gallery-service.service-id=gallery-service
zuul.routes.auth-service.path=/auth/**
zuul.routes.auth-service.service-id=AUTH-SERVICE$
# So, if request is "/gallery/view/1", gallery service will get "/view/1".
zuul.routes.auth-service.strip-prefix=false
# Exclude authorization from sensitive headers
zuul.routes.auth-service.sensitive-headers=Cookie,Set-Cookie 
tofill
Fichiers Common Auth
Main
  • com.microservices.
tofill
  • com.microservices.
tofill
Pom.xml
  • Dependencies
tofill
  • Dependencies
tofill
Properties
tofill
tofill