AWS IoT - 为什么主题名称空间对于区域是隔离的?

AWS IoT - Why topic namespace is isolated for regions?

刚刚阅读 AWS IoT document。很好奇它的message broker的设计:

The topic namespace is isolated for each AWS account and region pair. For example, the Sensor/temp/room1 topic for an AWS account is independent from the "Sensor/temp/room1" topic for another AWS account. This is true of regions, too. The "Sensor/temp/room1" topic in the same AWS account in us-east-1 is independent from the same topic in us-west-2. AWS IoT does not support sending and receiving messages across AWS accounts and regions.

为什么AWS会分离消息代理的访问?如果消息可以跨多个区域访问,那不是很方便吗?

使消息代理区域独立有什么好处?

引用中的最后一句话...

AWS IoT does not support sending and receiving messages across AWS accounts and regions.

...让命名空间的问题变得有些无意义。

命名空间是独立的,因为区域是独立的。如果消息不能跨越区域边界,命名空间是通用的就没有意义,因为它们不能。

如果你的问题真的是 "Why are the regions independent?" 那么我会借用 EC2 documentation --

中的一句话

This achieves the greatest possible fault tolerance and stability.

几乎所有 AWS 服务都使用类似的模型运行。 SQS 队列名称? SNS 主题名称?区域命名空间。

例外情况是像 IAM、CloudFront 和 Route 53 这样的服务,所有这些服务都已 配置,但无法运行, 依赖于 us-east-1... 和 S3 ,它需要一个全局名称空间,以便存储桶可以 1:1 明确映射到 DNS 主机名。