이벤트 스트리밍이란?
이벤트 스트리밍은 인체의 중추 신경계의 디지털 버전.
기술적으로 말하면, 이벤트 스트리밍은 데이터베이스,센서, 모바일 기기, 소프트웨어 애플리케이션과 같은 이벤트 소스에서 이벤트 스트림 형태로 실시간으로 데이터를 캡처하는 관행. 이러한 이벤트 스트림을 나중에 검색할 수 있도록 내구성 있게 저장합니다. 이벤트 스트림을 실시간으로 그리고 회고적을 ㅗ조작, 처리 및 반응합니다. 그리고 필요에 따라 이벤트 스트림을 다른 대상 기술로 라우팅 합니다. 따라서 이벤트 스트리밍은 적절한 정보가 적절한 시간에 적절한 장소에 있도록 데이터의 지속적인 흐름과 해석을 보장합니다.
아파치 카프카는 이벤트 스트리밍 플랫폼
카프카의 역할
- pub/sub
- 원하는 기간 동안 이벤트 스트림을 지속적이고 안정적으로 처리함
- 발생하는 대로 회고적으로 이벤트 스트림을 처리함.
뛰어난 확장성, 탄력성, 내결함성이 있고 안전한 방식으로 제공됨.
kafka는 베어 메탈 하드웨어, 가상 머신 및 컨테이너에 배포할 수 있으며, 온프레미스와 클라우드에 모두 배포할 수 있습니다.
카프카는 어떻게 동작하나요?
카프카는 TCP 네트워크 프로토콜을 통해 서버와클라이언트로 구성된 분산 시스템 입니다
서버 : kafka는 여러 데이터 센터, 클라우드 지역에 걸쳐있는 하나 이상의 서버 클러터로 실행됩니다.
이러한 서버 중 일부는 브로커라고 하는 스토리지 계층을 형성합니다.
다른 서버는 kafka connect를 실행하여 데이터 이벤트 스트림을 지속적으로 가져오고 내보내
kafka를 관계형 데이터 베이스 및 다른 kafka 클러스터와 같은 기존 시스템과 통합합니다.
미션 크리티컬 사용 사례를 구현할 수 있도록 kafka 클러스터는 확장성이 뛰어나고 내 결함성이 있습니다.
서버 중 하나가 실패하면 다른 서버가 작업을 인계하여 데이터 손실 없이 지속적인 운영을 보장합니다.
클라이언트
네트워크 문제나 머신 장애가 발생하더라도 병렬로, 대규모로, 내결함성 방식으로 이벤트 스트림을 읽고 쓰고 처리하는 분산 애플리케이션과 마이크로 서비스를 작성할 수 있습니다. kafka는 이러한 클라이언트가 일부 포함되어 있으며, kafka 커뮤니티에서 제공하는 수십개의 클라이언트로 보강됩니다.
참고자료
- https://docs.aws.amazon.com/msk/latest/developerguide/bestpractices.html
- https://docs.aws.amazon.com/msk/latest/developerguide/msk-default-configuration.html
- https://kafka.apache.org/documentation/
- https://cwiki.apache.org/confluence/display/KAFKA/KIP-226+-+Dynamic+Broker+Configuration
d
d
d
d