이벤트 허브와 Azure 서비스 버스의 주제에 대한 명확성을 찾고 있습니다.
이벤트 허브에 대해 배우고 있는데 이벤트 허브에 대한 내 관점을 확인하거나 수정하고 싶으십니까?저는 Azure 서비스 버스 대기열 및 주제가 제공하는 일반 엔터프라이즈 메시징 솔루션을 위해 재시도, 독극물 메시지 등을 활용하는 데 익숙합니다.이벤트 허브는 더 높은 규모의 "엔터프라이즈" 기능을 일부 포기해야 하는 매우 높은 규모의 다른 툴을 제공하기 위한 것으로 보입니다.
제가 이것에 대해 올바르게 생각하고 있나요?추가로 고려해야 할 사항이 있습니까?이벤트 허브 및 주제와 기능적으로 중복될 수 있다는 것은 알고 있지만, 이벤트 허브를 사용하는 방법에 대해 명확하게 알고 싶습니다.
선택할 수 있는 경우, 단일 이벤트를 사용한 것으로 표시하고 메시지를 재시도할 수 있는 전체 엔터프라이즈 펍 서브 메시징 시스템을 기반으로 시스템을 작성하는 것이 거의 항상 더 쉽습니다.이미 메시지 채널 파티션 분할(Azure 서비스 버스 토픽에서 지원하는 것으로 표시됨)을 수락한 경우, 기본적으로 필요한 수준까지 보다 완벽한 기능을 갖춘 메시징 시스템을 확장할 수 있습니다.그 문제는 어떤 대가를 치르나요?
Azure 서비스 버스 토픽은 백만 개 메시지당 약 0.20달러의 높은 비용을 가지고 있으며, Amazon SQS(약간 유사함)는 백만 개 메시지당 0.50달러를 표시합니다.직접 호스트하는 경우 많은 Rabbit를 설정해야 할 것입니다.MQ 서버 또는 파티션을 분할할 때 여러 클러스터도 사용할 수 있습니다.
Azure Event Hub의 가격은 백만 달러당 0.028달러에 처리량 단위당 금액을 더한 것으로, Amazon Kinesis도 마찬가지입니다.Apache Kafka는 3대의 컴퓨터에서 초당 200만 번의 벤치마크를 받았습니다.
초 당 20,000개의 이벤트가 일부 Azure Topics 간의 차이를 유지했으며 Azure 이벤트 허브는 풀타임 개발자의 급여 범위에 있습니다.평균 초당 2백만 달러(MS에 연락해야 함)의 차이는 월 100만 달러에 육박합니다.
기본적으로 전체 메시징 시스템의 모든 유용한 기능이 필요하지 않거나 최대 10배의 프리미엄을 지불할 만큼 충분한 기능이 필요하지 않은 경우(또는 영웅적인 노력 없이는 적절한 메시징 시스템을 충분히 확장할 수 없기 때문에 사용할 수 없는 경우) 분할 스트림/로그/오프셋 추적 시스템을 사용합니다.
저는 얼마 전에 서비스 버스 팀에서 댄의 지원을 받아 이 주제에 대해 글을 썼습니다.이것이 당신을 위해 명확해지기를 바랍니다.
http://syslog integration.sys/2015/03/azure-event-vs-azure-timeout/
서비스 버스(메시징
메시징의 경우, 하나 이상의 응용 프로그램이 하나 이상의 응용 프로그램에게 무언가를 수행하거나 나에게 무언가를 의미합니다.
이벤트 허브(이벤트)
다른 방법은 애플리케이션에서 문제가 발생했다고 말하는 경우입니다.
정답!
이벤트 허브와 주제의 근본적인 차이점은 - 토픽은 메시지별 의미를 제공하는 반면, EventHubs - 스트림 의미를 제공하는 - 는 어떤 것도 기대해서는 안 된다는 것입니다.per-message기능/의미론을 제공합니다.
를 제공하는 모든 중간 per-message은 능은다같제니다됩공과 됩니다.processing overhead (the tax)!!
예: 메시지당 중복 탐지, 메시지당 수신 확인(항목에 메시지가 있음).Complete to ack Msg received) - 모두 토픽 기능입니다.EventHubs는 기능 세트의 범위를 좁혀 더 나은 낮은 지연 시간/높은 처리량 솔루션을 제공합니다.
번 의미론으로입니다 - 및 의 한 해당 이 (EventHubs의 "permg" 및 "permg"를 . 주어진 eventHub 파티션 및 체크포인트의 한 지점까지 읽고 해당 이벤트를 사용하는 응용 프로그램이 다음을 처리하도록 합니다.at-least-once배달.
이 MS Learn 기사와 "Choose the Azure messaging services"에 따르면 선택할 항목은 다음과 같습니다.
"Azure 이벤트 허브는 대량의 이벤트 분석 유형을 위해 설계되었습니다.Azure Service Bus 및 스토리지 큐는 모든 애플리케이션 워크플로우의 핵심 부분을 바인딩하는 데 사용할 수 있는 메시지용입니다."
통신 서비스는 일반적으로 각각의 개체(이벤트 허브는 이벤트를 처리하고 서비스 버스는 메시지를 처리)를 처리하도록 설계되었기 때문에 이벤트와 메시지의 용도가 무엇인지 이해하는 것이 중요합니다.
이벤트는 어떤 일이 발생했다는 알림을 트리거합니다.메시지보다 "가벼운" 메시지입니다. 메시지에는 발생한 일에 대한 정보가 있지만 이벤트 자체를 트리거한 데이터는 없습니다.예를 들어, 이벤트는 파일 업로드를 알려주고 파일에 대한 정보는 포함하지만 파일 자체는 포함하지 않을 수 있습니다.이벤트는 일반적으로 브로드캐스트 통신/팬아웃 워크플로우에 사용됩니다. 즉, 각 게시자에 대한 구독자 수가 많은 경우에 사용됩니다.게시자는 이벤트가 소비자에 의해 처리되는 방식에 대해 전혀 기대하지 않습니다.
메시지에는 메시지 파이프라인을 트리거하는 데이터가 포함됩니다.이벤트와 달리 게시자는 메시지가 소비자에 의해 처리되는 방식에 대해 기대합니다.예를 들어 게시자는 서비스에서 생성된 원시 데이터와 함께 메시지를 보내고, 완료되면 소비자가 해당 데이터를 저장하고 응답을 다시 보낼 것으로 예상합니다.
이벤트를 처리하는 이벤트 그리드도 있지만 이벤트 허브와는 다릅니다.이벤트 허브는 분석과 관련된 빅 데이터 파이프라인을 위해 설계된 반면, 이벤트 그리드는 이벤트 중심의 사후 대응형 프로그래밍을 위해 설계되었습니다.)
언급URL : https://stackoverflow.com/questions/28183020/looking-for-clarity-on-event-hubs-vs-topics-in-azure-service-bus
'programing' 카테고리의 다른 글
| Xcode에서 템플릿 변경 (0) | 2023.05.29 |
|---|---|
| Xcode가 하드웨어에서 프로젝트 실행을 갑자기 중지했습니다. "xxx.app을 시작할 수 없습니다.해당 파일이 없습니다." (0) | 2023.05.29 |
| Xcode 4용 Organizer에 아카이브가 표시되지 않음 (0) | 2023.05.29 |
| 기본 AVD 구성 폴더(.android) 이동 (0) | 2023.05.24 |
| .NET의 동일한 대화 상자에서 파일 또는 폴더 선택 (0) | 2023.05.24 |