📌 개요
인프런 - 백엔드 개발자 성능 개선 초석 다지기 강의를 수강하고 기존의 프로젝트에서 개선할 수 있는 점을 알게 되었고 이를 적용해 보았습니다.
🎯 목표
- 멀티 쓰레드 및 비동기 처리를 활용한 성능 향상 ✅
- 로컬 캐시(Ehcache)를 사용한 성능 향상 ✅
🤚🏻 1. 멀티쓰레드로 응답시간 단축하기
🚨 1.1 문제 상황
Coolsms API를 활용해 문자 전송 시스템을 구축하는 과정에서,
다량의 메시지를 동시에 전송할 때 응답 시간이 선형적으로 증가하는 문제가 발생했습니다.
- 단일 요청당 응답 시간이 약 1000ms였기 때문에,
- 즉 100명에게 메시지를 보내면 사용자는 약 100초를 기다려야 했습니다.
- 비동기적으로 메시지를 처리할 필요가 있었습니다.
📊 1.2 개념 정리
동시성 vs 병렬성
Java에서 비동기
@Async 어노테이션
그럼 쓰레드 풀은??