일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 클라우드
- MVC
- SQL
- Intellj
- 알고리즘
- DP
- 쿼리
- 운영체제
- 자바
- 오라클
- golang
- 페이징
- MST
- aws
- Jenkins
- Spring
- 코딩
- Spring Boot
- Spring Cloud
- PL/SQL
- retry
- Kafka
- 백준
- Spring Cloud Feign
- 데이터베이스
- feign
- db
- JPA
- 자료구조
- 디자인 패턴
- Today
- Total
목록전체 글 (140)
justgo_developer
문제 Legacy를 MSA로 전환 중 특정 큐를 읽은 후 삭제하는 로직이 있었는데, 해당 API는 POST 방식의 HTTP 요청이지만 빈 body로 요청을 하는 경우였다. 하지만, 그 경우 Feign Client로 호출시 411 "Length Required" 에러가 발생하였다. Content-Length: 0으로 헤더를 세팅해도 동일. 해결방법 body에 빈 스트링을 줘서 처리 함 Feign Client에서 제공하는 Feign 종류는 Default, ApacheHttpClient, OkHttpClient 3가지가 있음. Default는 기본으로 Empty body여도 뭔가를 생성하는 Feign Client 버그인거 같다. 따라서 ApacheHttpClient, OkHttpClient 둘중 하나를 사용하..
Spring Cloud Feign retry customize 기본적으로 Spring Cloud Feign retry 대상은 IO Exception이다. IO Exception이란 입출력 동작 실패 또는 인터럽트 시 발생하는 Exception ErrorDecoder 인터페이스를 직접 구현하여 에러 코드별로 처리 할수 있다. retry 대상이 아닌 에러 코드를 retry 처리 하려면 아래와 같이 해당 코드에 RetryableException 예외를 발생시켜주면 된다. yml 설정에 feign.client.config.feignName.errorDecoder에 ErrorDecoder 인터페이스를 직접 구현한 클래스 경로를 추가해준다. package com.study.springcloud; import fei..
[문제] Feign과 hystrix 사용시 요청 시 실패하는 경우가 발생한다. Feign 문제는 아니고 hystrix 때문에 발생하는 문제이다. [해결] stackoverflow에서 같은 문제에 대한 답변을 찾아보니 htstrix default 요청에 대한 timeout 설정이 작아서 그렇다고 한다. 기본 값이 1초라 요청이 오래 걸리는 경우 반드시 수정이 필요 hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds # 요청에 대한 Time Out 설정 이 설정은 Hystrix 가 적용된 메서드의 타임아웃을 지정한다. 따라서 보통 feign read timeout과 connect timeout 지정한 초를 포함하여 여유있게 설정하..