Commit c6fed074 by 李传峰

处理OBS连接问题

parent 9bff3dfc
...@@ -216,7 +216,7 @@ public class OssUtils { ...@@ -216,7 +216,7 @@ public class OssUtils {
LOGGER.error("【aliOSS】上传文件失败:" + e.getMessage(), e); LOGGER.error("【aliOSS】上传文件失败:" + e.getMessage(), e);
throw new FileException(FileException.FILE_UPLOAD_FAILURE, "上传文件失败"); throw new FileException(FileException.FILE_UPLOAD_FAILURE, "上传文件失败");
} finally { } finally {
client.close(); // client.close();
} }
//oss%2Ftranscode%2Faudio%2Fmp3%2Ftest_20200529150529182.mp3 //oss%2Ftranscode%2Faudio%2Fmp3%2Ftest_20200529150529182.mp3
if (!StringUtil.isEmpty(ossFileDO.getObject()) && ossFileDO.getObject().contains("%2F")) { if (!StringUtil.isEmpty(ossFileDO.getObject()) && ossFileDO.getObject().contains("%2F")) {
...@@ -255,7 +255,7 @@ public class OssUtils { ...@@ -255,7 +255,7 @@ public class OssUtils {
LOGGER.error("【aliOSS】上传文件失败:" + e.getMessage(), e); LOGGER.error("【aliOSS】上传文件失败:" + e.getMessage(), e);
throw new FileException(FileException.FILE_UPLOAD_FAILURE, "上传文件失败"); throw new FileException(FileException.FILE_UPLOAD_FAILURE, "上传文件失败");
} finally { } finally {
ossClient.close(); // ossClient.close();
} }
//oss%2Ftranscode%2Faudio%2Fmp3%2Ftest_20200529150529182.mp3 //oss%2Ftranscode%2Faudio%2Fmp3%2Ftest_20200529150529182.mp3
if (!StringUtil.isEmpty(ossFileDO.getObject()) && ossFileDO.getObject().contains("%2F")) { if (!StringUtil.isEmpty(ossFileDO.getObject()) && ossFileDO.getObject().contains("%2F")) {
...@@ -293,7 +293,7 @@ public class OssUtils { ...@@ -293,7 +293,7 @@ public class OssUtils {
LOGGER.error("【aliOSS】下载文件失败:" + e.getMessage(), e); LOGGER.error("【aliOSS】下载文件失败:" + e.getMessage(), e);
throw new FileException(FileException.FILE_UPLOAD_FAILURE, "上传文件失败"); throw new FileException(FileException.FILE_UPLOAD_FAILURE, "上传文件失败");
} finally { } finally {
ossClient.close(); // ossClient.close();
} }
return result; return result;
} }
...@@ -1276,7 +1276,7 @@ public class OssUtils { ...@@ -1276,7 +1276,7 @@ public class OssUtils {
ObsClient ossClient = getOSSClient(bucketName); ObsClient ossClient = getOSSClient(bucketName);
ObjectMetadata objectMetadata = ossClient.getObjectMetadata(bucketName, objectKey); ObjectMetadata objectMetadata = ossClient.getObjectMetadata(bucketName, objectKey);
// 关闭client // 关闭client
ossClient.close(); // ossClient.close();
return objectMetadata; return objectMetadata;
} }
...@@ -1315,7 +1315,7 @@ public class OssUtils { ...@@ -1315,7 +1315,7 @@ public class OssUtils {
os.close(); os.close();
} }
if (ossClient != null) { if (ossClient != null) {
ossClient.close(); // ossClient.close();
} }
} catch (Exception e) { } catch (Exception e) {
LOGGER.error("【aliOSS】下载文件,关闭文件流失败:" + e.getMessage(), e); LOGGER.error("【aliOSS】下载文件,关闭文件流失败:" + e.getMessage(), e);
...@@ -1756,7 +1756,7 @@ public class OssUtils { ...@@ -1756,7 +1756,7 @@ public class OssUtils {
FileUtils.deleteFile(localPath); FileUtils.deleteFile(localPath);
LOGGER.error("【aliOSS】图片处理API:" + e.getMessage(), e); LOGGER.error("【aliOSS】图片处理API:" + e.getMessage(), e);
} finally { } finally {
ossClient.close(); // ossClient.close();
} }
return localPath; return localPath;
} }
...@@ -1886,7 +1886,7 @@ public class OssUtils { ...@@ -1886,7 +1886,7 @@ public class OssUtils {
FileUtils.creatFiles(localPath); FileUtils.creatFiles(localPath);
ObsObject obsObject = ossClient.getObject(request); ObsObject obsObject = ossClient.getObject(request);
obsObjectToLocalFile(localPath, obsObject); obsObjectToLocalFile(localPath, obsObject);
ossClient.close(); // ossClient.close();
// 上传处理后的图片,并删除本地文件 // 上传处理后的图片,并删除本地文件
UploadResultInfo uploadResultInfo = uploadLocalFile4CustomName(localPath, fileName); UploadResultInfo uploadResultInfo = uploadLocalFile4CustomName(localPath, fileName);
FileUtils.deleteFile(localPath); FileUtils.deleteFile(localPath);
...@@ -1926,12 +1926,23 @@ public class OssUtils { ...@@ -1926,12 +1926,23 @@ public class OssUtils {
return Math.round(result); return Math.round(result);
} }
private static final Map<String, ObsClient> OBS_CLIENT_MAP = new HashMap<>();
/** /**
* 获取OSS客户端 * 获取OSS客户端
*/ */
private static ObsClient getOSSClient(String bucketName) { private static ObsClient getOSSClient(String bucketName) {
return new ObsClient(AliyunConstant.MAIN_ACCESS_KEY_ID, if (OBS_CLIENT_MAP.get(bucketName) == null) {
AliyunConstant.MAIN_ACCESS_KEY_SECRET, AliyunConstant.getOSSEndPoint(bucketName)); 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 { ...@@ -1942,7 +1953,7 @@ public class OssUtils {
ObsClient ossClient = getOSSClient(bucketName); ObsClient ossClient = getOSSClient(bucketName);
boolean found = ossClient.doesObjectExist(bucketName, objectKey); boolean found = ossClient.doesObjectExist(bucketName, objectKey);
// 关闭client // 关闭client
ossClient.close(); // ossClient.close();
return found; 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