본문 바로가기

hystrix2

뭐? MSA? 그렇다면 장애 전파를 막아보자! Circuit Breaker. - 03 Circuit Breaker MSA는 서비스에 장애가 발생할 경우 이 서비스에 종속된 다른 서비스까지 장애가 전파될 수 있습니다. Circuit Breaker는 회로차단기라는 의미로 MSA에서는 이 Circuit Breaker패턴을 사용해 위와같은 문제를 해결하였습니다. Circuit Breaker는 A라는 서비스에 장애가 발생하면 이 서비스를 호출하는 B 서비스가 A 서비스를 호출할 때 즉각적으로 호출을 끊어 스레드를 점유하지 않도록 해줍니다. Netflix는 Circuit Breaker 또한 오픈소스로 Hystrix라는 자바 라이브러리를 제공해주고 있습니다. Hystrix Hystrix is a latency and fault tolerance library designed to isolate poi.. 2021. 4. 16.
뭐? MSA? 그렇다면 다른 서비스를 호출해보자 Service Mesh. - 02 이전에는 MSA의 기본인 Gateway를 구현했습니다. 자 그러면 마이크로 서비스 답게 내부의 서비스들은 각자의 방법으로 메시지를 주고받아야 합니다. 그렇다면 어떤 방법을 사용해야 할까요? 앞에서 만든 Gateway를 사용하는 것도 하나의 방법이 될 수 있습니다. 이 방법을 사용하면 모든 트래픽을 게이트웨이에서 관리하니까 로깅같은 부분에서는 더욱 용이할거라고 생각합니다. 하지만 모든 네트워크 통신이 Gateway라는 단일 진입점을 사용하게 되면, 서비스의 트래픽이 커졌을 때, 게이트웨이의 장애가 전체 서비스의 장애가 될 수 있습니다. 이를 단일 장애점 (Single point of failure) 이라고 합니다. 따라서 각각의 서비스는 peer-to-peer 방식으로 통신이 이루어지는게 이상적인 아키텍처.. 2021. 4. 14.