对象存储服务的回源特性

2024-06-12 08:20

本文主要是介绍对象存储服务的回源特性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

为充分提升基础设施相关预算的投资效率,数据安全性,客户的数据可能分布在多套存储中,按照价格、业务场景等,可以划分为如下形式:

  • 本地高端存储,支撑生产类业务
  • 本地低端存储,支撑归档类业务、分析型业务
  • 云端高端存储,支撑生产类业务、分析型业务
  • 云端低端存储,支撑归档类业务

依据不同的规则从不同的存储设备上获取数据,对于客户应用而言,则不是一个好消息,因此期望对象存储服务提供一个统一的访问点,简化客户应用程序的实现。
默认情况下,对象存储服务发现客户指定的对象不存在时,直接返回HTTP 404错误码,为实现回源业务,需要针对前述行为增加例外处理。
从实现技术角度,对象存储可以提供如下方案:

  • 重定向
  • 代理
  • CDN
  • 镜像

重定向

对象存储服务基于HTTP协议的301错误码,实现重定向。
相关流程如下:

  • 客户应用访问对象存储,指定对象名。
  • 对象存储服务检查对象名,发现对象在本集群中不存在。
  • 对象存储服务检查回源规则,发现可以由别的对象存储服务提供访问。
  • 对象存储服务在请求响应消息中返回HTTP 301错误码,同时提供指定的存储服务的URL。
  • 客户应用收到HTTP 301错误码后,使用响应消息中的对象存储服务的URL,重新发起访问请求。

在上述操作流程中,客户应用可以感知到本端对象存储服务和源对象存储服务。

代理

相关流程如下:

  • 客户应用访问对象存储,指定对象名。
  • 对象存储服务检查对象名,发现对象在本集群中不存在。
  • 对象存储服务检查回源规则,发现可以由别的对象存储服务提供访问。
  • 对象存储服务将客户端的请求,转发至源对象存储服务。
  • 本端对象存储服务等待源对象存储服务返回响应。
  • 本端对象存储服务收到响应后,重新封装后,返回给客户应用。
  • 客户应用收到响应。

在上述操作流程中,客户应用只能感知本端对象存储服务。
客户应用下次访问相同的对象时,本端对象存储服务仍然需要将请求转发至源对象存储服务。

CDN

相关流程如下:

  • 客户应用访问对象存储,指定对象名。
  • 对象存储服务检查对象名,发现对象在本集群中不存在。
  • 对象存储服务检查回源规则,发现可以由别的对象存储服务提供访问。
  • 对象存储服务将客户端的请求,转发至源对象存储服务。
  • 本端对象存储服务等待源对象存储服务返回响应。
  • 本端对象存储服务收到响应后
    • 重新封装后,返回给客户应用。
    • 在本端对象存储服务中保留一个副本,并指定过期规则。
  • 客户应用收到响应。

在上述操作流程中,客户应用只能感知本端对象存储服务。
客户应用下次访问相同的对象时,

  • 假如对象在本端对象存储服务中未过期,则由本端对象存储服务响应客户应用的请求。
  • 假如对象在本端对象存储服务中已过期,本端对象存储服务仍然需要将请求转发至源对象存储服务,同时将对象在本端对象存储服务中保留一个副本。

镜像

相关流程如下:

  • 客户应用访问对象存储,指定对象名。
  • 对象存储服务检查对象名,发现对象在本集群中不存在。
  • 对象存储服务检查回源规则,发现可以由别的对象存储服务提供访问。
  • 对象存储服务将客户端的请求,转发至源对象存储服务。
  • 本端对象存储服务等待源对象存储服务返回响应。
  • 本端对象存储服务收到响应后
    • 重新封装后,返回给客户应用。
    • 在本端对象存储服务中保留一个副本。
  • 客户应用收到响应。

在上述操作流程中,客户应用只能感知本端对象存储服务。
客户应用下次访问相同的对象时,直接由本端对象存储服务响应客户应用的请求。

实现思路

实现回源的方案时,考虑点如下:
需要回源的对象
比如:

  • 对象名,比如前缀、后缀
  • 访问账户

回源的站点
客户应用可以指定的参数,比如:

  • 站点的URL,可以指定1个或者多个,设计点比如:
    • 1个主站点,多个备站点
    • 多个主站点,多个备站点
    • 主、备之间切换的条件
    • 站点之间的负载策略
  • 站点的访问账户
  • 站点的并发度
    • 超出源站并发度的对策,请求排队或者直接返回即定的错误码
  • 请求超时值
  • 失效阈值
    • 连续失败的次数
    • 给定时间内失败的次数
    • 连续超时的次数
    • 给定时间内超时的次数
  • HTTP头部的处理
    • 可行的操作,比如透传、附加、修改、删除
    • 处理的范围,比如请求消息中的头部、响应消息中的头部

回源支持的操作
比如读相关的操作。

回源方式
不同回源方式涉及到的业务参数。

  • 重定向
    • 指示客户应用需重新访问的错误码,一般是301
    • 错误码映射,兼容源站的即有实现
  • 代理
    • 访问超时值
    • 错误码映射,兼容源站的即有实现
  • CDN
    • 保留期,决定了对象暂存多长时间
    • 保留对象的桶
    • 保留对象的桶的空间配额
    • 超出配额之后的对策,比如:
      • 不缓存新对象
      • 清理老对象,LRU等
  • 镜像
    • 保留对象的桶
    • 保留对象的桶的空间配额
    • 超出配额之后的对策,比如:
      • 不缓存新对象
      • 清理老对象,LRU等

参考资料

华为云

  • 设置镜像回源规则
  • 获取镜像回源规则
  • 删除镜像回源规则

XSKY

  • 「星技术」纳管对象、NAS及公有云等存储,XSKY对象回源轻松搞定!

这篇关于对象存储服务的回源特性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1053685

相关文章

C++对象布局及多态实现探索之内存布局(整理的很多链接)

本文通过观察对象的内存布局,跟踪函数调用的汇编代码。分析了C++对象内存的布局情况,虚函数的执行方式,以及虚继承,等等 文章链接:http://dev.yesky.com/254/2191254.shtml      论C/C++函数间动态内存的传递 (2005-07-30)   当你涉及到C/C++的核心编程的时候,你会无止境地与内存管理打交道。 文章链接:http://dev.yesky

java8的新特性之一(Java Lambda表达式)

1:Java8的新特性 Lambda 表达式: 允许以更简洁的方式表示匿名函数(或称为闭包)。可以将Lambda表达式作为参数传递给方法或赋值给函数式接口类型的变量。 Stream API: 提供了一种处理集合数据的流式处理方式,支持函数式编程风格。 允许以声明性方式处理数据集合(如List、Set等)。提供了一系列操作,如map、filter、reduce等,以支持复杂的查询和转

【服务器运维】MySQL数据存储至数据盘

查看磁盘及分区 [root@MySQL tmp]# fdisk -lDisk /dev/sda: 21.5 GB, 21474836480 bytes255 heads, 63 sectors/track, 2610 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (logical/physical)

springboot家政服务管理平台 LW +PPT+源码+讲解

3系统的可行性研究及需求分析 3.1可行性研究 3.1.1技术可行性分析 经过大学四年的学习,已经掌握了JAVA、Mysql数据库等方面的编程技巧和方法,对于这些技术该有的软硬件配置也是齐全的,能够满足开发的需要。 本家政服务管理平台采用的是Mysql作为数据库,可以绝对地保证用户数据的安全;可以与Mysql数据库进行无缝连接。 所以,家政服务管理平台在技术上是可以实施的。 3.1

API-环境对象

学习目标: 掌握环境对象 学习内容: 环境对象作用 环境对象: 指的是函数内部特殊的变量this,它代表着当前函数运行时所处的环境。 作用: 弄清楚this的指向,可以让我们代码更简洁。 函数的调用方式不同,this指代的对象也不同。【谁调用,this就是谁】是判断this指向的粗略规则。直接调用函数,其实相当于是window.函数,所以this指代window。

Python分解多重列表对象,isinstance实现

“”“待打印的字符串列表:['ft','bt',['ad',['bm','dz','rc'],'mzd']]分析可知,该列表内既有字符对象,又有列表对象(Python允许列表对象不一致)现将所有字符依次打印并组成新的列表”“”a=['ft','bt',['ad',['bm','dz','rc'],'mzd']]x=[]def func(y):for i in y:if isinst

微服务中RPC的强类型检查与HTTP的弱类型对比

在微服务架构中,服务间的通信是一个至关重要的环节。其中,远程过程调用(RPC)和HTTP是两种最常见的通信方式。虽然它们都能实现服务间的数据交换,但在类型检查方面,RPC的强类型检查和HTTP的弱类型之间有着显著的差异。本文将深入探讨这两种通信方式在类型检查方面的优缺点,以及它们对微服务架构的影响。 一、RPC的强类型检查 RPC的强类型检查是其核心优势之一。在RPC通信中,客户端和服务端都使

中国341城市生态系统服务价值数据集(2000-2020年)

生态系统服务反映了人类直接或者间接从自然生态系统中获得的各种惠益,对支撑和维持人类生存和福祉起着重要基础作用。目前针对全国城市尺度的生态系统服务价值的长期评估还相对较少。我们在Xie等(2017)的静态生态系统服务当量因子表基础上,选取净初级生产力,降水量,生物迁移阻力,土壤侵蚀度和道路密度五个变量,对生态系统供给服务、调节服务、支持服务和文化服务共4大类和11小类的当量因子进行了时空调整,计算了

SpringCloud - 微服务

1、微服务介绍         参考: 微服务百度百科 1.1 概念         微服务(或称微服务架构)是一种云原生架构方法,在单个应用中包含众多松散耦合且可单独部署的小型组件或服务。 这些服务通常拥有自己的技术栈,包括数据库和数据管理模型;通过一个REST API、事件流和消息代理组合彼此通信;以及按照业务能力进行组织,具有通常称为有界上下文的服务分隔线。         微服务特

mysql中存储过过程和游标的联合使用

1.SQL如下: DELIMITER //DROP PROCEDURE IF EXISTS PrintAllEmployeeNames5;CREATE PROCEDURE PrintAllEmployeeNames5()BEGINDECLARE error_count INT DEFAULT 0;DECLARE num INT ;DECLARE done INT DEFAULT