본문 바로가기

openfeign4

[트러블슈팅] API Gateway OpenFeign 사용 오류 🐞 버그 설명상황 API Gateway는 다른 서비스들과 마찬가지로 서비스 디스커버리에 Eureka Client로 등록되어있습니다.따라서, 사용자의 로그아웃 여부를 처리하는 과정에 있어 다른 기타 서비스와 마찬가지로 OpenFeign을 사용하려고 하였지만,해당 부분에서 버그가 발생하였습니다.발생한 버그block()/blockFirst()/blockLast() are blocking, which is not supported in thread reactor-http-nio-3 위의 버그는 아래 코드의 doNotLogout에서 발생했습니다.doNotLogout은 OpenFeign을 활용해 유저 서비스에 유저의 로그아웃 여부를 확인하는 메서드입니다. doNotLogout을 활용하는 GatewayFilter .. 2024. 6. 25.
요즘 블로그 포스팅이 뜸한 이유 학교에서 캡스톤 프로젝트를 진행하며 코드 구현을 하다보니 블로그 포스팅이 늦어지고 있다. 프로젝트를 진행하며 트러블 슈팅/적용해본 서비스 구조/새롭게 얻는 정보가 여러가지 있지만 포스팅을 못하고 있다. 간단하게 나열하자면 OpenFeign과 Spring Cloud Gateway간의 순환 참조 오류 OpenFeign과 Spring Cloud Gateway간의 순환 참조 오류 🐞 버그 설명 OpenFeign과 Spring Cloud Gateway를 함께 사용했을 때 Bean 순환 참조가 오류가 발생했습니다. 로그를 보니 FeignClient와 Gateway Router 부분에서 해당 문제가 발생한 것 같습니다.(로그 참고) 처 hdbstn3055.tistory.com 서비스가 여러 레포지터리에 의존 방법과 .. 2024. 4. 8.
OpenFeign과 Spring Cloud Gateway간의 순환 참조 오류 🐞 버그 설명 OpenFeign과 Spring Cloud Gateway를 함께 사용했을 때 Bean 순환 참조가 오류가 발생했습니다. 로그를 보니 FeignClient와 Gateway Router 부분에서 해당 문제가 발생한 것 같습니다.(로그 참고) 처음엔 그냥 의존성 주입 코드에 문제가 있는 줄 알았으나 코드상의 문제는 없었습니다. Gateway가 아닌 일반 서비스에서는 OpenFeign 사용에 문제가 없었으며 관련 설정에도 문제가 없었습니다. 또한, OpenFeign과 설정에서 같은 user-service 키워드를 사용하기에 해당 부분을 수정하였음에도 해결되지 않았습니다. AuthFeignClient 인터페이스 @FeignClient(name = "auth-service") @Qualifier("A.. 2024. 4. 3.
[Spring Cloud] Spring에서 MSA를 구축해보자 우리는 Spring에서 지원해주는 프레임워크 중 하나인 Spring Cloud를 활용하여 이전에 살펴본 MSA를 구현해볼 수 있다. Spring Cloud Netflix 스프링 클라우드 넷플릭스는 Spring Boot Application에 관한 통합 환경 구성을 지원하는 Netflix의 OSS 서비스이다. OSS: 오픈 소스 소프트웨어 Netflix OSS와 Spring Cloud Netflix Netflix OSS에는 다양한 서비스들이 존재한다. 각각에 관해 간략히 알아보자. Eureka : Discovery Server 각각의 서비스 인스턴스들이 동적으로 확장, 축소 되더라도 인스턴스의 상태를 하나의 서비스로 관리할 수 있는 서비스 Ribbon: Client Side Load Balancer 부하 .. 2024. 3. 27.