Backend Developer
Contact
Email [email protected]
Phone 010-4589-5148
Blog https://velog.io/@tlarbals824/posts
Github https://github.com/tlarbals824
Introduce
Career
Splab
- 모니터링 구축
- 지속적으로 변경되는 ip들을 추적하기 위해 private dns를 활용
- 서버들이 등록되면 private dns에도 자동으로 추가되도록 설정
- 서버가 배포되며 ip가 변경되더라도 유연하게 추적할 수 있게 됨
- 유연한 db scale out 구축
- private dns를 통한 읽기 db 연결
- scale out시 다운타임 x
- route 53에만 등록하면 됨
- Spring Modullith를 통한 비동기 이벤트 시스템 구축
- 기존 이벤트들을 어떻게 마이그레인션할 까?
- id와 class 타입을 추출하여 저장 → entity manager로 조회하도록 변경
- 문제
- 재발행 주기를 어떻게 설정할 것 인가? 10분
- 특정 이벤트 처리가 너무 길어져 그 사이에 재발행될때를 대비해야함 ← 해결해야할 문제
- 알림 시스템 비동기화
- 알림 발송을 이벤트 기반(이벤트 저장도함)으로 변경
- 알림 발송 실패 시 이벤트 재발행을 통해 재처리하도록 조치
- alb 라우팅 알고리즘 변경
- 커넥션 사용의 불균등을 모니터링을 통해 확인
- 불균들의 원인이 라우팅 알고리즘(라운드 로빈)에 있다고 생각함.
- 요청시간이 긴 api와 짧은 api가 불균형하게 분배되고 있다고 생각함
일부 서버가 다른 서버보다 더 많은 리소스를 소비하거나 응답 시간이 느릴 경우, Round Robin 알고리즘은 부하를 균등하게 분산하지 못할 수 있습니다.
- [LOR(Least Outstanding Requests)] 적용
- 해당 알고리즘은 새로운 대상이 과부하 대상에서 부하를 효과적으로 덜어내는 데도 도움이 됩니다.
- 요청량 10% 상승
- 결제 시스템 구축