主页 > bbin >

阿里云OSS归档文件特点

2020-03-18 11:57

  OSS归档文件特点:

  1.上传文件即为解冻形状。

  2.阿里云控制台手动解冻需求1分钟摆布,其他调用解冻时长为1分钟-4小时不等。

  3.一次解冻流程可以继续24小时,24小时内再次调用会主动延长24小时,一次解冻最多可以有效调用7次接口。

  4.解冻形状完毕后,形状会主动解冻。

  java解冻归档文件说明。

  归档类型(Archive)的文件需求解冻(Restore)以后才华读取。非归档类型的文件,不要调用RestoreObject方法。

  归档类型的Object在履行解冻前后的形状变换过程以下:

  归档类型的Object初始时处于冷冻形状。

  提交一次解冻恳求后,Object处于解冻中的形状。完成解冻义务平日需求1分钟,最长等待义务完成时间为4小时。

  效劳端完成解冻义务后,Object进入解冻形状,此时您可以读取Object。解冻形状默许继续24小时,24小时内再次调用RestoreObject接口则解冻形状会主动延长24小时。关于同份归档文件,一次解冻流程内可有效调用7次RestoreObject接口到达最长7天的解冻继续时间。

  解冻形状完毕后,Object再次前去到冷冻形状。

  以下代码用于解冻归档文件:

  // Endpoint以杭州为例,其它Region请按实践状况填写。

  String endpoint="http://oss-cn-hangzhou.aliyuncs.com";

  // 阿里云主账号AccessKey具有一切API的访问权限,风险很高。剧烈建议您创立并应用RAM账号停止API访问或平常运维,请登录 https://ram.console.aliyun.com 创立RAM账号。

  String accessKeyId="";

  String accessKeySecret="";

  String bucketName="";

  String objectName="";

  // 创立OSSClient实例。

  OSS ossClient=new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);

  ObjectMetadata objectMetadata=ossClient.getObjectMetadata(bucketName, objectName);

  // 校验文件可否为归档文件。

  StorageClass storageClass=objectMetadata.getObjectStorageClass();

  if (storageClass==StorageClass.Archive) {

  ? ? // 解冻文件。

  ? ? ossClient.restoreObject(bucketName, objectName);

  ? ? // 等待解冻完成。

  ? ? do {

  ? ? ? ? Thread.sleep(1000);

  ? ? ? ? objectMetadata=ossClient.getObjectMetadata(bucketName, objectName);

  ? ? } while (!objectMetadata.isRestoreCompleted());

  }

  // 获得解冻文件。

  OSSObject ossObject=ossClient.getObject(bucketName, objectName);

  ossObject.getObjectContent().close();

分享到:
收藏