배민 구조
-
(펌) 배민은 서비스 장애를 어떻게 없앴나설계·방법론 2022. 6. 11. 00:22
https://byline.network/2020/12/17-108/ 배민은 서비스 장애를 어떻게 없앴나 - Byline Network A매치 축구대회나 프로야구 코리안시리즈와 같은 대형 스포츠 이벤트가 있을 때 나는 경기 시작 한참 전에 치킨을 배달시키곤 했었다. 너무 빨리 주문하는 바람에 막상 경기가 시작됐을 때는 치 byline.network 간단하게 정리 모놀리틱에서 MSA로 전환 배경 사용자가 몰리면 장애가 발생해서 전환 필요 DB에 영향이 생기면 전체 서비스가 장애 발생 배민 아키텍처 정리 1. 마이크로서비스들이 이벤트 기반으로 연결 ex) 주문이 들어오면 주문 시스템은 주문이 들어왔다는 이벤트를 발생시키고 끝난다. 다른 시스템에 정보를 API로 직접 넘겨주는 것을 최소화 장애가 전파되는 것을..
-
배민쇼핑라이브를 만드는 기술: 채팅 편 내용 정리설계·방법론 2022. 6. 8. 18:15
왜 자체 구현했는가? Sendbird나 FCM 같은 외부 메시징 서비스 도입을 검토했으나 자체 구현하는 것이 쇼핑라이브에 가장 맞는 채팅을 만들 수 있을 것 같아서 진행함 아키텍처 Redis Pub/Sub + Webflux + Websocket 구현의 방향성 1. Websocket을 최소한 사용한다. 복잡성이 늘어나기 때문에 REST API로 가능한 것들은 소켓 사용을 하지 않음 2. RDB 직접 접근을 배제한다. Webflux랑 JDBC를 사용하면 non-blocking의 이점을 얻지 못하기 때문에 Redis를 사용함 시행착오들 WebSession 사용으로 인한 장애 어드민 장애 컴포넌트 렌더링 회수를 줄이는 방향으로 변경 출처 https://techblog.woowahan.com/5268/ 배민쇼핑라..