목록Programming/Message Queue (2)
Patrick's 데이터 세상

뉴스 기사 수집기 개발 단계에서 Scrapy를 통하여 수집한 기사를 MySQL 테이블에 적재하는 구조의 뉴스 기사 수집기이고 해당 단계에서 MySQL Connection Pool에 불필요한 커넥션이 쌓여 리소스를 낭비하는 문제가 발생하였습니다. 이에 Open source Message Queue 중 RabbitMQ를 통하여 MQ Broker를 구현하였습니다. RabbitMQ는 docker를 이용하여 실행하였습니다. https://www.rabbitmq.com/ Messaging that just works — RabbitMQ Developer Experience Deploy with BOSH, Chef, Docker and Puppet. Develop cross-language messaging with..

MQ(Message Queue)란? Message Queue는 프로세스 또는 프로그램 인스턴스가 데이터를 교환할 때 사용하는 통신 방법입니다. Producer, Consumer가 존재하는데 , Producer는 메시지를 큐에 전송하고 Consumer가 큐의 메시지를 처리하는 방식입니다. MQ를 사용하면 비동기로 요청을 처리하고 queue에 저장하여 consumer에게 병목을 줄여줄 수 있고 중간 미들웨어에게 메시지를 위임하여 순차적으로 처리하게끔 한다. 장점 비동기식, 비동조, 탄력, 과잉, 보증, 확장성 사용처 대용량 데이터를 처리하기 위한 배치 작업이나, 채팅 서비스, 비동기 데이터를 처리할 때 사용됩니다. 분산되어 있는 데이터를 집중시키고 메시지 브로커로 필요한 프로그램에 작업을 분산시킬 때 사용합..