유튜브블로그Top 10
내 프로필

데브허브 안내
소개업데이트 소식

데브허브 커뮤니티

카카오엔터테인먼트FE

September 25, 20231

마법소녀 이세계 아이돌 웹툰 런칭! BFF 장애 대응기

마법소녀 이세계 아이돌 웹툰 런칭! BFF 장애 대응기
간단 소개

카카오페이지 BFF 서버 장애 대응 경험 공유: node.js http.agent의 keepAlive 설정 중요성 강조.

AI Summary
  • 이세계 아이돌 웹툰 런칭과 BFF 서버 장애
    • 카카오페이지 BFF 서버에서 이세계 아이돌 웹툰 런칭 당시 트래픽 급증으로 CPU 100%를 찍는 장애 발생
    • 원인 파악을 위해 다양한 가설 설정 및 검증 진행
  • 문제 해결 과정 및 원인 분석
    • 백엔드 API, 인프라, 미들웨어, apollo-server 자체 문제 등 다양한 가능성 검토
    • nGrinder를 이용한 부하 테스트를 통해 성능 병목 지점 확인
    • 최종적으로 node.js http.agentkeepAlive 속성 기본값이 false로 설정되어 있어 연결을 재사용하지 못하고 매번 새로운 연결을 생성하는 것이 문제의 원인임을 밝혀냄
  • 해결책 및 교훈
    • keepAlive 설정을 true로 변경하여 TCP 연결 재사용 활성화
    • 성능 개선 효과 확인 (TPS 기준 프록시 720 -> 3600, graphql 560 -> 1800)
    • node.js 19버전 미만에서는 기본 agent 사용 시 keepAlive 설정 주의 필요
원문 보기

Next Feeds

BULK 처리 Write에 집중해서 개선해보기

BULK 처리 Write에 집중해서 개선해보기

JPA와 JDBC를 활용한 BULK 처리 Write 성능 개선 전략 및 테스트 결과 비교 분석. 상황에 맞는 기술 선택의 중요성 강조.

BULK 처리JPAJDBC성능 개선batchUpdate
2023. 9. 20.
컬리
Confluent Schema Registry 도입기!

Confluent Schema Registry 도입기!

요기요의 Confluent Schema Registry 도입 PoC 여정을 소개하며, SubjectNameStrategy별 특징과 multi type event 적용 시 고려사항을 분석합니다.

ConfluentSchema RegistryKafkaSubjectNameStrategyAvro
2023. 9. 19.
요기요
쿠폰 발급 RabbitMQ도입기

쿠폰 발급 RabbitMQ도입기

올리브영 쿠폰 발급 시스템에 RabbitMQ를 도입하여 기능 확장성, 안정성, 성능을 향상시킨 과정과 효과를 설명합니다.

RabbitMQRedis Worker쿠폰 발급비동기 처리메시지 큐
2023. 9. 18.
올리브영
새 배송지 추가 form 개발하기

새 배송지 추가 form 개발하기

올리브영의 새 배송지 추가 form 개발 과정을 소개하고 React Hook Form 라이브러리 사용 경험과 다른 라이브러리와의 비교를 공유합니다.

React Hook FormFormikReactFrontend상태 관리
2023. 9. 18.
올리브영
Release 2.28 비하인드 이야기 (with 계좌의확장캠프)

Release 2.28 비하인드 이야기 (with 계좌의확장캠프)

카카오뱅크 mini 서비스의 가입 연령을 7세 이상으로 확대하는 과정에서의 기술적 어려움과 해결 과정을 담고 있습니다.

카카오뱅크mini 서비스연령 확대마이데이터레거시 코드
2023. 9. 15.
카카오뱅크
SK플래닛 클라우드 기반 검색 시스템

SK플래닛 클라우드 기반 검색 시스템

SK플래닛은 Elasticsearch 기반 클라우드 검색 시스템을 운영하며, ChatGPT 등 AI 기술을 활용한 검색 서비스 확장을 연구 중이다.

Elasticsearch클라우드검색 시스템ChatGPT인공지능
2023. 9. 13.
skplanet