마이크로서비스의 하트비트

날아올라돼지야·2024년 8월 28일
0

이번 챕터에선 Eureka 서버에 마이크로서비스들이 하트비트를 보내는 과정을 알아봅니다. 하트비트는 마이크로서비스가 Eureka 서버와의 연결 상태를 주기적으로 확인하고, 서비스가 여전히 정상적으로 작동 중임을 서버에 알리는 중요한 메커니즘입니다.

1. 마이크로서비스 시작

  • 먼저, 모든 마이크로서비스를 시작합니다.
    • Loans 마이크로서비스를 먼저 시작하고,
    • Cards 마이크로서비스를 이어서 시작한 후,
    • Accounts 마이크로서비스를 마지막으로 시작합니다.
  • 마이크로서비스들이 성공적으로 시작되면, 자동으로 Eureka 서버에 자신들의 인스턴스 정보를 등록합니다.

2. Eureka 대시보드에서 등록 상태 확인

  • Eureka 대시보드 (localhost:8070)로 이동하여, 등록된 마이크로서비스들을 확인할 수 있습니다.
  • 새로고침을 하면 모든 마이크로서비스들이 성공적으로 등록되었음을 확인할 수 있습니다.

3. 하트비트 시도 시 Eureka 서버 종료

  • 마이크로서비스들이 Eureka 서버에 하트비트를 보내는 과정을 확인하기 위해, Eureka 서버를 종료합니다.
  • Eureka 서버가 종료된 상태에서, 마이크로서비스들은 계속해서 하트비트를 보내려고 시도하지만, Eureka 서버가 응답하지 않기 때문에 예외가 발생합니다.
  • 이를 보기 위해 각 마이크로서비스의 콘솔 출력을 확인합니다.

4. 콘솔 로그에서 하트비트 오류 확인

  • Eureka 서버가 종료된 후 약 30초가 지나면, 마이크로서비스의 콘솔 로그에 오류 메시지가 출력됩니다.
  • AccountsApplication의 로그를 보면, 하트비트를 Eureka 서버에 보내려고 시도했으나 실패했다는 예외 메시지가 나타납니다.
    was unable to send Heartbeat to Eureka Server
  • 이와 같은 메시지는 LoansApplicationCardsApplication의 콘솔 로그에서도 동일하게 확인할 수 있습니다.

5. 하트비트 메커니즘의 의미

  • 이 과정은 각 마이크로서비스가 시작되면서 Eureka 서버에 스스로를 등록하고, 정상 작동 중임을 확인하기 위해 30초마다 하트비트를 보내며, 문제가 발생하면 예외가 발생하는지를 확인하는 데모입니다.
  • 이 모든 과정은 수동으로 관리할 필요 없이, Eureka와 마이크로서비스 간의 자동화된 통신을 통해 이루어집니다.

요약

이 강의에서는 Eureka 서버와 마이크로서비스 간의 하트비트 통신 과정을 확인했습니다. 마이크로서비스는 주기적으로 하트비트를 보내어 자신의 상태를 Eureka 서버에 알리며, 서버가 종료되었을 때는 예외가 발생합니다. 이 모든 작업은 자동으로 처리되며, 이를 통해 마이크로서비스와 Eureka 서버 간의 신뢰성을 유지할 수 있습니다.

이제 다음 챕터에서는 Eureka 서버를 활용해 다른 마이크로서비스를 어떻게 발견하고, 부하 분산을 수행하는지에 대해 알아볼 것입니다.

profile
무슨 생각하며 사니

0개의 댓글