【问题标题】:Does Google Cloud Storage Bucket use Amazon S3?Google Cloud Storage Bucket 是否使用 Amazon S3?
【发布时间】:2019-04-22 22:27:04
【问题描述】:

我确实设置了一个 Google 云存储桶,其中包含 index.html 和 test.html 以及当我转到我的域时看到的内容:

请参阅:doc.s3.amazonaws.com/2006-03-01:

    <?xml version='1.0' encoding='UTF-8'?>
    <ListBucketResult xmlns='http://doc.s3.amazonaws.com/2006-03-01'> 
    <Name>my-domain.com</Name>
    <Prefix></Prefix>
    <Marker></Marker>
    <IsTruncated>false</IsTruncated>
    <Contents><Key>index.html</Key>
    <Generation>1555969892676799</Generation>
    <MetaGeneration>1</MetaGeneration>
    <LastModified>2019-04-22T21:51...</LastModified>
<ETag>"...."</ETag>
<Size>25</Size></Contents><Contents>
<Key>test.html</Key>

等等。

我没有亚马逊账号。

【问题讨论】:

    标签: amazon-s3 google-cloud-platform google-cloud-storage bucket


    【解决方案1】:

    尽管命名空间中存在该字符串,但对该请求的响应并非来自 AWS。

    Google Cloud Storage (GCS) 有两个 API。一种是基于 JSON 的,看起来像 Google 的大多数 API(称为 JSON API),另一种是基于 XML 的,旨在与一些与 S3 一起使用的云存储工具和库进行互操作。这个想法是,如果您已经使用了这样的工具,例如 Python boto 库,则可以通过更改 URL 和凭据来使用 GCS。解析 XML 响应的客户端可能会验证 XML 命名空间,因此他们希望将字符串“http://doc.s3.amazonaws.com/2006-03-01”作为协议的一部分。

    您正在向 XML API 发送请求(通过 storage.googleapis.com、BUCKET_NAME.storage.googleapis.com 或通过 CNAME DNS 重定向到 Cloud Storage),因此生成的消息尝试提供可互操作的响应。

    【讨论】:

    • 感谢 Google 的直接答复。我现在明白了。反正我看起来很奇怪。 AWS 是一个不太期望的命名空间。至少对我来说。利用这种情况,如果你能看到这个:stackoverflow.com/questions/55779048/… - 它是关于存储和 k8s 支持的。
    【解决方案2】:

    如果我们查看找到的 XML API 文档here,我们会发现这里的一切都符合预期。我们看到的是一个 XML 文档,它有一个名为 http://doc.s3.amazonaws.com/2006-03-01 的 XML 命名空间。将其视为使用命名数据类型的声明。这种数据类型(ListBucketResult)似乎是由 AWS(亚马逊)指定的,GCP 决定在自己的实现中重新使用这个规范,而不是仅仅实现一个在语义上可能与之前相同的全新规范。已经存在。接口的重用通常对所有人来说都是一件好事。如果您需要,可以选择不同的云提供商,这可能意味着更容易移植和更少的供应商锁定。

    我猜 AWS 是第一个提供云 blob 存储的公司,并且开创了先例。描述开放标准的 XML 命名空间很常见。我还猜测云存储提供商应该提供什么目前没有开放标准规范。所以亚马逊有 S3,谷歌有谷歌云存储,Azure 有 Azure Blob 存储。

    【讨论】:

    • 是的,有道理。感谢您的链接。所有这些文档......以及关于“采用”如果谷歌已经发明并采用了#kubertetes 并将其用于他们的内部服务,那么为什么几乎所有文档都在#GCP 上带有命令式(不是 k8s yml 声明性)谷歌特定命令......跨度>
    猜你喜欢
    • 1970-01-01
    • 2017-01-12
    • 1970-01-01
    • 2020-06-13
    • 2017-11-08
    • 1970-01-01
    • 2016-10-19
    • 2019-12-30
    • 2023-03-14
    相关资源
    最近更新 更多