일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- hashcode
- cache
- java
- 필드 주입
- StringBuilder
- Exception
- 조합
- KEVISS
- Spring
- MSA
- jwt
- redis
- AOP
- 재정의
- stream
- SQL
- docker
- Test
- DDL
- 인덱스
- 생성자 주입
- 테스트 코드
- 열 속성
- equals
- DI
- lambda
- VUE
- jpa
- static
- select_type
- Today
- Total
목록2025/05/08 (4)
백엔드 개발자 블로그
Stored Procedure : 최적화 및 멈파일 단계 결과를 캐싱성능 - 최적화 및 멈파일 단계 결과를 캐싱, 인자값만 변경해도 최적화 및 컴파일이 그대로 유지유지보수 - 함수는 수정불가능한데, SP는 가능 / 서버 로직과 쿼리 로직 분리 가보안 - 설정도 가능
스프링 부트 액추에이터를 사용해 메트릭을 생성하고 프로메테우스에 저장한 다음 그라파나로 시각화한 경험이 있습니다. 수집한 지표는 다음과 같습니다.CPU, 메모리, JVM 힙 사용량톰캣 스레드 풀과 데이터베이스 커넥션 풀 상태error 레벨 로그로깅은 LogBack을 이용했습니다. 그리고, Loki에 7일동안 보관하도록 설정했으며 로그 추적을 위해 MDC를 사용했습니다.
외부 api를 사용하는 상황에서 외부 api에서 장애가 발생한다면 장애를 직접 해결할 수 없다. 장애를 최소화 해보자 1. 타임 아웃 설정커넥션 타임응답속도 시간 2. 벌크헤드 패턴연동 서비스마다 HTTP 커넥션 풀을 나눠주자 3. 서킷브레이커장애가 한계치 이상으로 발생하게 된다면 연결을 일시적으로 끊어버리자

시스템 개비입사하고 보니 저에게는 결제 API 단순화, 결제 시스템 데이터베이스 분리 및 파티션 도입, 비동기 결제 시스템 개발 이라는 굵직굵직한 작업들이 기다리고 있었습니다.Java, Spring Framework, ORM 등의 기술 지식은 그간 해온 게 있기 때문에 (구글링이 있기 때문에) 파악하는데 어렵지 않았지만, 이미 구축되어 있는 시스템을 손대는 것은 쉬운 일이 아니었습니다."거대 규모 프로젝트에서 내가 수정한 코드가 어떤 사이드 이펙트를 발생시킬지.."이래서 존재하는 것이 바로 테스트 코드 !! 다행히 테스트 코드를 지향하는 프로젝트였기에 작성된 테스트의 보호 아래 신나게 개발을 할 수 있었습니다.결국 테스트를 모두 통과시키며, 개발이 완료되었습니다!그리고 이때부터 본격적인 미지의 영역에 대..