Sfoglia il codice sorgente

场景下载速度优化

dengsixing 3 anni fa
parent
commit
16dd85690e

+ 9 - 43
4dkankan-center-scene-download/src/main/java/com/fdkankan/download/service/impl/SceneDownloadHandlerServiceImpl.java

@@ -387,8 +387,7 @@ public class SceneDownloadHandlerServiceImpl {
                     );
                 }
             }
-
-            items.parallelStream().forEach(item->{
+            for (ImageTypeDetail item : items) {
                 String par = "?x-oss-process=image/resize,m_lfit,w_" + imageType.getSize() + "/crop,w_512,h_512,x_" + item.getX() + ",y_" + item.getY();
                 if(StorageType.AWS.code().equals(uploadType)){
                     par += "&imagesVersion="+ imagesVersion;
@@ -402,51 +401,18 @@ public class SceneDownloadHandlerServiceImpl {
                         url += par;
                         break;
                     case AWS:
-                        try {
-                            url += URLEncoder.encode(par.replace("/", "@"), "UTF-8");
-                        } catch (UnsupportedEncodingException e) {
-                            e.printStackTrace();
-                        }
+                        url += URLEncoder.encode(par.replace("/", "@"), "UTF-8");
                         break;
                 }
                 var fky = key.split("/" + resolution + "/")[0] + "/" + dir + "/" + imageType.getName() +  num + "_" + item.getI()  + "_" + item.getJ() + ext;
-                if(!imgKeys.contains(fky)){
-                    imgKeys.add(fky);
-                    long start = Calendar.getInstance().getTimeInMillis();
-                    try {
-                        this.zipBytes(out, wwwroot + fky, FileUtils.getBytesFromUrl(url));
-                    } catch (Exception e) {
-                        e.printStackTrace();
-                    }
-                    log.info("切图耗时,url:{},time:{}", url, Calendar.getInstance().getTimeInMillis() - start);
+                if(imgKeys.contains(fky)){
+                    continue;
                 }
-            });
-//            for (ImageTypeDetail item : items) {
-//                String par = "?x-oss-process=image/resize,m_lfit,w_" + imageType.getSize() + "/crop,w_512,h_512,x_" + item.getX() + ",y_" + item.getY();
-//                if(StorageType.AWS.code().equals(uploadType)){
-//                    par += "&imagesVersion="+ imagesVersion;
-//                }
-//
-//                var url = this.
-//                    resourceUrl + key;
-//                StorageType storageType = StorageType.get(uploadType);
-//                switch (storageType){
-//                    case OSS:
-//                        url += par;
-//                        break;
-//                    case AWS:
-//                        url += URLEncoder.encode(par.replace("/", "@"), "UTF-8");
-//                        break;
-//                }
-//                var fky = key.split("/" + resolution + "/")[0] + "/" + dir + "/" + imageType.getName() +  num + "_" + item.getI()  + "_" + item.getJ() + ext;
-//                if(imgKeys.contains(fky)){
-//                    continue;
-//                }
-//                imgKeys.add(fky);
-//                long start = Calendar.getInstance().getTimeInMillis();
-//                this.zipBytes(out, wwwroot + fky, FileUtils.getBytesFromUrl(url));
-//                log.info("切图耗时,url:{},time:{}", url, Calendar.getInstance().getTimeInMillis() - start);
-//            }
+                imgKeys.add(fky);
+                long start = Calendar.getInstance().getTimeInMillis();
+                this.zipBytes(out, wwwroot + fky, FileUtils.getBytesFromUrl(url));
+                log.info("切图耗时,url:{},time:{}", url, Calendar.getInstance().getTimeInMillis() - start);
+            }
 
         }