我一直在实用程序中使用这两种方法,将大约5000多个文档/ s3Object从一个存储桶复制到另一个存储桶。在这样做的同时,我在复制s3Object(使用copyObject()方法)之前检查该对象是否已经存在于目标存储桶中(使用dosObjectExists()方法),以使该对象不会被覆盖。
if (!amazonS3Client.doesObjectExist(copyObjRequest.getDestinationBucketName(),
copyObjRequest.getDestinationKey())){
amazonS3Client.copyObject(copyObjRequest);
} else { Log.info("S3 object already exists at the destination bucket:" +
copyObjRequest.getDestinationBucketName() + " key: " +
copyObjRequest.getDestinationKey());
}
在上面的过程中,我觉得dosObjectExists()方法比copyObject()方法花费更多的时间。
如果我的观察正确,请提供帮助?