Skip to content

gnu-gnu/spring-cloud-example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

spring-cloud-example

Example for Spring cloud (netflix OSS, spring cloud)

이 ν”„λ‘œμ νŠΈλŠ” μ•„λž˜μ™€ 같은 μš”μ†Œλ₯Ό ν¬ν•¨ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€

  • eureka-server (λ””μŠ€μ»€λ²„λ¦¬ μ„œλΉ„μŠ€)
    • 3개의 peer-to-peer λ””μŠ€μ»€λ²„λ¦¬ μ„œλ²„
    • 각 μ„œλ²„λŠ” -Dspring.profiles.active=peer1 or peer2 or peer3 μ˜΅μ…˜μ„ 톡해 κ΅¬λ™ν•˜μ—¬μ•Ό ν•©λ‹ˆλ‹€.
    • μ‚¬μš©ν•˜λŠ” ν¬νŠΈλŠ” 8800-8802 μž…λ‹ˆλ‹€. 각 μ„œλ²„λŠ” μƒνƒœλ₯Ό 확인할 수 μžˆλŠ” λŒ€μ‹œλ³΄λ“œλ₯Ό ν¬ν•¨ν•©λ‹ˆλ‹€.
  • eureka-client (κ°„λ‹¨ν•œ λ°±μ—”λ“œ)
    • 3개의 eureka-client μ„œλΉ„μŠ€
    • 각 μ„œλ²„λŠ” -Dspring.profiles.active=peer1 or peer2 or peer3 μ˜΅μ…˜μ„ 톡해 κ΅¬λ™ν•˜μ—¬μ•Ό ν•©λ‹ˆλ‹€.
    • μ‚¬μš©ν•˜λŠ” ν¬νŠΈλŠ” 8811-8813 μž…λ‹ˆλ‹€.
    • ꡬ성 정보에 λŒ€ν•΄μ„œ config-first-bootstrap 으둜 κ΅¬ν˜„λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.
  • eureka-client-2 (κ°„λ‹¨ν•œ λ°±μ—”λ“œ)
    • 3개의 eureka-client μ„œλΉ„μŠ€
    • 각 μ„œλ²„λŠ” -Dspring.profiles.active=peer1 or peer2 or peer3 μ˜΅μ…˜μ„ 톡해 κ΅¬λ™ν•˜μ—¬μ•Ό ν•©λ‹ˆλ‹€.
    • μ‚¬μš©ν•˜λŠ” ν¬νŠΈλŠ” 8821-8823 μž…λ‹ˆλ‹€.
    • ꡬ성 정보에 λŒ€ν•΄μ„œ discovery-first-bootstrap 으둜 κ΅¬ν˜„λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.
  • zuul-gateway (API Gateway)
    • ν¬νŠΈλŠ” 8888 μž…λ‹ˆλ‹€.
    • http://localhost:8888/api/client/ping 둜 μš”μ²­μ„ μ „μ†‘ν•˜λ©΄ λ‘œλ“œλ°ΈλŸ°μ‹±μ΄ 적용된 eureka-client λ°±μ—”λ“œ 호좜 응닡을 λ³΄μ—¬μ€λ‹ˆλ‹€.
    • POST http://localhost:8888/actuator/refresh 을 톡해 μ›κ²©μ˜ 섀정을 κ°±μ‹ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
    • hystrix-dashboard 및 turbine stream이 이 ν”„λ‘œμ νŠΈμ— ν†΅ν•©λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.
    • API Gateway둜 GET http://localhost:8888/api/client/userList μš”μ²­μ„ 톡해 client -> client-2 둜 ribbon 을 ν†΅ν•œ μš”μ²­μ„ 날리고 hystrix λ₯Ό ν†΅ν•œ fallback 이 λ™μž‘ν•©λ‹ˆλ‹€.
    • http://localhost:8888/ μ—μ„œ http://localhost:8888/turbine.stream 을 μž…λ ₯ν•΄ turbine.stream 을 톡해 전체 λ””μŠ€μ»€λ²„λ¦¬μ˜ hystrix metric을 μ‹œκ°ν™” ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • spring-config-server (파일 기반 원격 컨피그 μ„œλ²„)
    • /src/main/resources/config 디렉토리 μ•ˆμ— μœ„μ˜ λͺ¨λ“  μ„œλΉ„μŠ€μ— λŒ€ν•œ config 파일이 μœ„μΉ˜ν•©λ‹ˆλ‹€.
    • 파일 기반 ꡬ동을 μœ„ν•΄ -Dspring.profiles.active=native VM args 둜 μ‹€ν–‰ν•˜μ—¬μ•Ό ν•©λ‹ˆλ‹€.
    • ν¬νŠΈλŠ” 9000을 μ‚¬μš©ν•©λ‹ˆλ‹€.
  • admin-server (spring-boot-admin)
    • http://localhost:9900 으둜 spring-boot-admin-serverλ₯Ό 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.
    • Discoveryλ₯Ό 기반으둜 instanceλ₯Ό μ‹λ³„ν•©λ‹ˆλ‹€.

About

Example for Spring cloud (netflix OSS, spring cloud)

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages