Commit c6fed074 by 李传峰

处理OBS连接问题

parent 9bff3dfc
......@@ -216,7 +216,7 @@ public class OssUtils {
LOGGER.error("【aliOSS】上传文件失败:" + e.getMessage(), e);
throw new FileException(FileException.FILE_UPLOAD_FAILURE, "上传文件失败");
} finally {
client.close();
// client.close();
}
//oss%2Ftranscode%2Faudio%2Fmp3%2Ftest_20200529150529182.mp3
if (!StringUtil.isEmpty(ossFileDO.getObject()) && ossFileDO.getObject().contains("%2F")) {
......@@ -255,7 +255,7 @@ public class OssUtils {
LOGGER.error("【aliOSS】上传文件失败:" + e.getMessage(), e);
throw new FileException(FileException.FILE_UPLOAD_FAILURE, "上传文件失败");
} finally {
ossClient.close();
// ossClient.close();
}
//oss%2Ftranscode%2Faudio%2Fmp3%2Ftest_20200529150529182.mp3
if (!StringUtil.isEmpty(ossFileDO.getObject()) && ossFileDO.getObject().contains("%2F")) {
......@@ -293,7 +293,7 @@ public class OssUtils {
LOGGER.error("【aliOSS】下载文件失败:" + e.getMessage(), e);
throw new FileException(FileException.FILE_UPLOAD_FAILURE, "上传文件失败");
} finally {
ossClient.close();
// ossClient.close();
}
return result;
}
......@@ -1276,7 +1276,7 @@ public class OssUtils {
ObsClient ossClient = getOSSClient(bucketName);
ObjectMetadata objectMetadata = ossClient.getObjectMetadata(bucketName, objectKey);
// 关闭client
ossClient.close();
// ossClient.close();
return objectMetadata;
}
......@@ -1315,7 +1315,7 @@ public class OssUtils {
os.close();
}
if (ossClient != null) {
ossClient.close();
// ossClient.close();
}
} catch (Exception e) {
LOGGER.error("【aliOSS】下载文件,关闭文件流失败:" + e.getMessage(), e);
......@@ -1756,7 +1756,7 @@ public class OssUtils {
FileUtils.deleteFile(localPath);
LOGGER.error("【aliOSS】图片处理API:" + e.getMessage(), e);
} finally {
ossClient.close();
// ossClient.close();
}
return localPath;
}
......@@ -1886,7 +1886,7 @@ public class OssUtils {
FileUtils.creatFiles(localPath);
ObsObject obsObject = ossClient.getObject(request);
obsObjectToLocalFile(localPath, obsObject);
ossClient.close();
// ossClient.close();
// 上传处理后的图片,并删除本地文件
UploadResultInfo uploadResultInfo = uploadLocalFile4CustomName(localPath, fileName);
FileUtils.deleteFile(localPath);
......@@ -1926,12 +1926,23 @@ public class OssUtils {
return Math.round(result);
}
private static final Map<String, ObsClient> OBS_CLIENT_MAP = new HashMap<>();
/**
* 获取OSS客户端
*/
private static ObsClient getOSSClient(String bucketName) {
return new ObsClient(AliyunConstant.MAIN_ACCESS_KEY_ID,
AliyunConstant.MAIN_ACCESS_KEY_SECRET, AliyunConstant.getOSSEndPoint(bucketName));
if (OBS_CLIENT_MAP.get(bucketName) == null) {
synchronized (OssUtils.class) {
if (OBS_CLIENT_MAP.get(bucketName) == null) {
long start = System.currentTimeMillis();
OBS_CLIENT_MAP.put(bucketName, new ObsClient(AliyunConstant.MAIN_ACCESS_KEY_ID,
AliyunConstant.MAIN_ACCESS_KEY_SECRET, AliyunConstant.getOSSEndPoint(bucketName)));
LOGGER.warn("ObsClient created,bucket={},cost={}", bucketName, System.currentTimeMillis() - start);
}
}
}
return OBS_CLIENT_MAP.get(bucketName);
}
/**
......@@ -1942,7 +1953,7 @@ public class OssUtils {
ObsClient ossClient = getOSSClient(bucketName);
boolean found = ossClient.doesObjectExist(bucketName, objectKey);
// 关闭client
ossClient.close();
// ossClient.close();
return found;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment