【问题标题】:Publish to Azure EventHub from AWS从 AWS 发布到 Azure EventHub
【发布时间】:2017-12-10 01:25:28
【问题描述】:

我正在研究一个用例,其中我们通过 REST API 从多个实体收集数据并将其保存在 RDBMS 上;这是一个现有的系统。此堆栈在 AWS 上的 Windows 服务(EC2 实例)上运行。

现在,我们希望将这些数据发布到 Azure EventHub 上。传统方法是使用 Azure EventHub REST 端点从 Windows 服务发布数据。

我知道 Azure EventHub 支持 1 MB/s 的 Ingress 吞吐量。根据我们预测的吞吐量(约 0.5 到 0.75 MB/s),我们可能无法充分利用 EventHub。我们可以为上述用例使用其他机制吗?

【问题讨论】:

  • 那么低吞吐量有什么问题呢?您要解决哪个问题?

标签: azure amazon-web-services azure-eventhub


【解决方案1】:

听起来事件中心上的 REST API 将是一个合适的解决方案。只有当您超出服务的限制时,从可扩展性的角度来看,它才会成为问题。即使在 0.0001 MB/s 的情况下,也可以使用未充分利用的事件中心。请注意,您只需要为您使用的容量付费,而不是为整个服务付费。

根据 RDBMS 的功能,您确实有一些替代选项来摄取数据。或者,您可以将传入的数据推送到服务总线(如 Amazon SQS),并将其路由到您的事件中心和 RDBMS。

在大容量场景中跨云提供商可能会变得昂贵,因为您要为云数据中心的进出付费。如果您可以坚持使用一个云提供商,您可以节省这些成本。

【讨论】:

  • 我非常同意你的观点,即数据传输可能很昂贵,但我们一如既往地受到外力的限制。我不明白你的第二段 - 你是在谈论 SQS 发布到 Azure EventHub 除了 AWS RDS 吗?这可能是开箱即用的吗?此外,从 Windows 服务发布到 EventHubs REST 端点可能无法满足预测的 Ingress。有什么想法吗?
  • 我的意思是,在通过 REST API 收集数据的地方,不要直接将这些数据插入到 RDBMS 中,而是将其放入队列(SQS、KAFKA、Kinesis)然后拥有它排队将事件“传递”到数据库并将它们转发到 Event-Hub。典型的事件中心类型模式。可以在 AWS Lambda 上构建需要的相关代码,从而让您不必乱搞虚拟机。如果没有更多关于您的设置和限制的知识,很难提供比标准模式更好的建议。
猜你喜欢
  • 1970-01-01
  • 2021-04-22
  • 2022-08-23
  • 1970-01-01
  • 1970-01-01
  • 2020-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多