💡CloudAMQP의 Part1: RabbitMQ Best Practices의 내용을 기반으로 작성했습니다. 이외에도 다른 파트 글도 내용이 좋으니, 한번 씩 읽어보시면 좋을 것 같습니다. :)Part 1: RabbitMQ Best PracticesPart 2 - Best Practice for High Performance Part 3 - Best Practice for High Availability Part 4 - 13 common RabbitMQ mistakes 메세지 큐를 사용하게 되면, 늘 고민하게 되는 것 중 하나가 "어떻게 하면, 안정적이고 가용성 있으며, 처리량 높게 설정할까?"입니다. Kafka를 학습할때도 알아봤던 것처럼, 이번에도 RabbitMQ를 어떻게 사용하면 좋을지에 대해 알..
전체 글
이전 블로그 : https://velog.io/@joo14753/posts🧑💻 BullMQ란?BullMQ는 Node.js 환경에서 Redis를 기반으로 동작하는 Job Queue 라이브러리다. Bull에서 BullMQ로BullMQ는 기존에 널리 쓰이던 Bull 라이브러리의 후속작이다. 기존 Bull은 단일 파일 구조에 옵션이 섞여있어 유지보수가 어려웠고, TypeScript 지원도 아쉬웠다. 이런 문제를 해결하기 위해 아키텍처를 전면 재설계한 것이 BullMQ다. BullBullMQTypeScript 지원미흡 (타입 정의 별도)네이티브 지원아키텍처Queue가 메세지 추가와 처리 모두 담당Queue / Worker 분리Redis 명령 처리개별 명령Lua 스크립트로 원자적 처리유지보수사실상 중단활발히 개발 중 Bull에서 BullMQ 발전하면서, 가장 큰 개선 사항은 아무래..
·기타
📌 메시징이란?메세징이란, 백엔드에서 서비스끼리 주고 받는 통신 방법 중 한가지 입니다.서비스를 개발하다가 한 서비스에서 일어난 일을 다른 서비스에 알려야 하는 상황이 왔을때 어떻게 구현해야할까?가장 익숙한 방법은 HTTP 요청입니다.HTTP 요청 예시주문 서비스 A ──── HTTP 요청 ────→ 알림 서비스 B (알림 저장 및 발행) ←──── 응답 대기 ─────이 방식은 단순하고 직관적이지만, 가장 큰 단점으로는 A와 B가 강하게 묶여 있게 된다는 것 입니다.알림 서비스가 느려지거나 멈추면, 주문 서비스도 동시에 그 영향을 받습니다.이러한 방식을 해결하기 위해 나온 것이 바로 메세징 입니다.메시지를 중간 어딘가에 던져두고 바로 다음 일을 합니다. 주문 서비스 A ── ..
·기타
📌 들어가며제목처럼 저는 싸피를 4번씩이나 도전을 했습니다. (11, 12, 13, 14기)다양한 부트캠프 중에서도 다섯 손가락안에 꼽히는 만큼, 싸피의 우월함(?), 기대감에 계속해서 지원했던 것 같습니다.4번씩 시도해보고 합격까지 해보면서, 확고해진 준비 방법과 느낀점을 공유하기 위해 정리했습니다. 매우 주관적인 정리글이기 때문에, 참고용으로 봐주시길 바라며, 혹시나 추후에 있을 싸피 지원에 도움이 되셨으면 좋겠습니다 :) 📝 자기소개서 작성많은 블로그 후기에서 확인할 수 있듯이, 핵심은 "왜 싸피에 지원했는가?"입니다. 뻔한 얘기인 것처럼 들릴 수 도 있지만, 면접까지 가보니, 계속 핵심적으로 물어보는 것이 "왜 지원했는가"였습니다.그래서 자기소개서에도 해당 부분을 강조해주시면 좋을 것 같습니다..