스트리밍 데이터를 수신하는 Client 구축
Client 설계
- filter stream endpoint에 대한 HTTPS 스트리밍 연결을 설정합니다.
- 스트림에서 규칙을 추가·삭제하기 위해 filter stream rules endpoint로 비동기적으로 POST 요청을 전송합니다.
- 데이터량이 적을 때의 처리 – 스트리밍 연결을 유지하면서 게시물 객체(Post object)와 keep-alive 신호를 감지합니다.
- 데이터량이 많을 때의 처리 – 비동기 프로세스를 사용해 스트림 수신을 후속 처리와 분리하고, 클라이언트 측 버퍼가 정기적으로 비워지도록 합니다.
- 클라이언트 측에서 볼륨(사용량) 추적을 관리합니다.
- 스트림 연결 끊김을 감지하고 상태를 평가한 뒤 스트림에 자동으로 재연결합니다.
스트리밍 엔드포인트에 연결하기
데이터 소비
- 임의의 순서로 나타나는 필드
- 예기치 않거나 누락된 필드
- 정렬되지 않은 포스트
- 중복 메시지
- 언제든지 스트림을 통해 내려올 수 있는 새로운 임의의 메시지 유형
버퍼링
- 클라이언트가 스트림을 충분히 빠르게 읽고 있는지 확인하세요. 일반적으로 스트림을 읽는 동안 실질적인 처리 작업을 수행해서는 안 됩니다. 스트림은 읽기만 하고, 처리할 작업은 다른 스레드/프로세스/데이터 저장소에 넘겨 비동기적으로 처리하세요.
- 데이터 센터의 인바운드 대역폭이, 장기간 지속되는 대용량 데이터뿐 아니라 훨씬 더 큰 스파이크(예: 평소의 5~10배 수준의 데이터량)도 수용할 수 있을 만큼 충분한지 확인하세요. 필터링된 스트림의 경우, 귀하 측에서 필요한 데이터량 및 해당 대역폭은 전적으로 규칙이 어떤 포스트와 일치하는지에 따라 달라집니다.