나도 푸시 빠르게 보내고 싶어요! (느린 연동 시스템에 대한 푸시 발송 처리)
- 초기 문제: 다양한 고객 시스템의 트래픽 처리 능력 차이를 고려하지 않고 동일한 속도로 푸시를 발송하여 일부 고객 시스템에 과부하 및 장애 발생. 💥
- 첫 번째 개선: 고객 시스템의 처리 속도에 따라 고객군을 분류하고, 각 군에 맞춰 다른 속도로 푸시를 병렬 발송하여 시스템 부하를 최소화. 🚦
- 두 번째 문제: 느린 속도로 발송되는 고객군 내에서 '우리 시스템' 푸시와 '고객사' 푸시가 동시에 발생할 경우, 한쪽이 오래 대기하는 문제 발생. ⏳
- 두 번째 개선: '우리 시스템' 푸시와 '고객사' 푸시를 별도의 스레드로 분리하여 동시에 처리함으로써 상호 간섭으로 인한 지연을 해소. ↔️
- 세 번째 문제: 동일한 속도군에 속한 여러 고객사의 푸시가 동시에 발송될 때, 한 고객사의 푸시가 다른 고객사의 푸시 발송을 지연시키는 문제 발생. 🚧
- 세 번째 개선: 동일 속도군 내에서도 각 고객사별 푸시를 병렬로 처리하여, 한 고객사 푸시가 다른 고객사 푸시를 지연시키는 문제를 해결. 🚀
- 남은 과제: 사용자 접속 시 고객 시스템과의 필수 연동 때문에, 고객 시스템의 트래픽 제한에 묶여 '우리 시스템' 자체 푸시를 빠르게 발송하지 못하는 문제 해결 필요. 💡