카프카 3

Apache Kafka와 구성 요소

Apache Kafka 카프카란? 카프카: 분산 이벤트 스트리밍(분산 데이터 스트리밍) 플랫폼이다. 여러 소스에서 데이터 스트림을 처리하고 여러 사용자에게 전달한다. 필요한 모든 곳에서 대규모 데이터를 동시에 이동 가능하다. 웹 사이트, 애플리케이션, 센서 등에 취합한 데이터를 스트림 파이프라인을 통해 실시간 관리하고 보내기 위한 분산 스트리밍 플랫폼이다. 데이터 생성하는 애플리케이션과 데이터를 소비하는 애플리케이션 간의 중재자로서 전송 제어, 처리, 관리 역할을 한다. 전통적인 메시징 시스템의 대안이다. 하루에 1조 4천 억 건의 메시지를 처리하기 위해 LinkedIn이 개발한 내부 시스템으로 시작했다. Java, Python, Go로 프로슈머, 컨슈머를 개발 카프카는 데이터 이동에 필요한 핵심 역할을..

미들웨어(Middleware)

미들웨어(Middleware) 미들웨어는 서로 다른 애플리케이션이 통신하는데 사용되는 소프트웨어를 말한다. 미들웨어는 OS와 해당 OS 상에서 실행되는 애플리케이션 사이에 존재하는 소프트웨어이다. 단일 시스템에 원할하게 통합할 수 있도록 다양한 기수르 도구, 데이터베이스 간에 다리 역할을 한다. 웹 브라우저가 데이터베이스로부터 데이터를 저장하거나 읽어올 수 있도록 미들웨어가 존재한다. 미들웨어의 종류 DB 접속 미들웨어: 애플리케이션과 데이터베이스 서버를 연결해주는 미들웨어 웹 애플리케이션 서버(Web Application Server): 애플리테이션과 데이터베이스 서버를 연결해주는 미들웨어 메시지 지향 미들웨어(Message Oriented Middleware, MOM) 분산 응용 프로그램 간에 미시지..

메시지 브로커(Message Broker)

메시지 브로커(Message Broker): 송신자의 메시지 프로토콜 형식으로부터의 메시지를 수신자의 메시지 프로토콜 형식으로 변환하는 중간 컴퓨터 프로그램 모듈이다. 메시지 브로커들은 응용 소프트웨어가 이전에 정의해둔 메시지를 교환할 수 있는 전기 통신의 요소 또는 컴퓨터 네트워크이다. 송신자(Publisher)로부터 받은 메시지를 수신자(subscriber)로 전달해주는 중간 역할을 한다. 응용 소프트웨어 간에 메시지를 교환할 수 있도록 한다. 메시지가 적재되는 공간을 Message Queue 라고 한다. 메시지 그룹을 topic이라고 한다. Ex) Apache Kafka, Rabbit MQ, Redis 메시지 브로커와 이벤트 브로커의 차이점 매시지 브로커는 이벤트 브로커 역할 가능하지만 이벤트 브로..