当S3对象被客户端访问时,AWS CloudFront启动,如果缓存区不存在,则将数据包发送到S3存储桶,如果存在缓存,则会直接从缓存中获取数据。
在S3存储桶中,数据被存储在区域中。每个S3存储桶都有一个唯一的URL(访问链接),称为OA(Object Addressing)。当S3对象存储在服务器上时,它将使用AWS的內部DNS来定位数据,然后生成URL。
在AWS中,查询S3商品时,必须使用AWS区域端点。这些端点是托管在不同地区的AWS服务器。因此,当通过CloudFront向S3存储桶发送GET请求时,它将转换为HTTP 1.1协议中的GET请求。
以下是一个用于从S3存储桶中下载对象的Python代码示例:
import boto3
s3 = boto3.resource('s3')
# To download a file
s3.Bucket('').download_file('', '')
# To get an S3 object
obj = s3.Object('', '')