日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用函數計算實現多個文件的打包下載

當您需要從對象存儲OSS中批量下載多個文件時,可能會遇到批量下載不方便、小文件較多等情況。 您可以通過函數計算將對象存儲OSS中的多個文件打包下載至本地,既可以節約時間又可以節省流量和相關費用。

流程及實現細節

流程圖

使用函數計算在對象存儲OSS中同時下載多個文件的流程圖如下:

image
  1. 按需調用函數,指定存儲空間及待壓縮文件。

  2. 調用函數后,函數計算從對象存儲OSS中下載目標文件并壓縮成ZIP包。

  3. 函數計算將ZIP包上傳到對象存儲OSS中。

  4. 函數計算將給您返回目標ZIP文件在對象存儲OSS中的地址。

  5. 您可以通過步驟4返回的地址下載目標文件。

實現細節

流程圖中步驟2步驟3實現的原理如下。

image

使用這種調用方式有以下優勢:

  • 函數運行環境的磁盤空間是有限的,采用流式下載和上傳的方式,在內存中只緩存少量數據。

  • 上傳ZIP文件到對象存儲OSS時,利用對象存儲OSS分片上傳的特性,將分片以隊列的形式多線程并發上傳。

前提條件

操作步驟

  1. 執行以下命令,初始化項目。

    sudo s init start-zip-oss-v3 -d start-zip-oss-v3

    根據界面提示,依次選擇地域,設置函數名稱并輸入函數的RAM角色。

    image

  2. 執行以下命令,進入項目,并進行項目部署。

    cd start-zip-oss-v3 && s deploy - y

    部署成功后,輸出示例如下。記錄返回的system_url,用于調用函數時使用。

    region:         cn-hangzhou
    description:    
    functionArn:    acs:fc:cn-hangzhou:1034354682****:functions/zip-oss-func-2m1d
    functionName:   zip-oss-func-jbip
    handler:        main.main_handler
    internetAccess: true
    memorySize:     3072
    role:           acs:ram::1034354682****:role/aliyunfcdefaultrole
    runtime:        python3.9
    timeout:        1800
    triggers: 
      - 
        description:   
        qualifier:     LATEST
        triggerConfig: 
          methods: 
            - GET
            - POST
            - PUT
          authType:           anonymous
          disableURLInternet: false
        triggerName:   http-test
        triggerType:   http
    url: 
      system_url:          https://zip-ossunc-jbip-gvdzx****.cn-hangzhou.fcapp.run
      system_intranet_url: https://zip-ossunc-jbip-gvdzx****.cn-hangzhou-vpc.fcapp.run
    __component:    fc3
  3. 應用部署成功后,調用部署好的函數下載多個文件。

    1. start-zip-oss-v3目錄下創建event.json文件,并在文件中指定Bucket名稱、待下載的文件所在的目錄或指定待下載文件名稱列表。

      • 通過source-dir指定要下載的文件所在的目錄。

        {
          "bucket": "bucketname", 
          "source-dir": "filepath/"
        }
      • 通過source-files指定要下載的文件列表。

        {
          "bucket": "bucketname", 
          "source-files": ["files1.txt","filepath/files2.txt"]
        }
    2. 使用curl命令直接調用函數。

      說明

      請將命令示例中的訪問地址更新為您部署應用成功后返回的公網訪問地址system_url

      curl -v -L -o /tmp/my.zip -d @./event.json https://zip-oss-func-zip-oss-****.cn-hangzhou.fcapp.run

      調用成功后,您可以在/tmp文件夾中查看到下載的壓縮文件my.zip。同時登錄對象存儲控制臺,在對應Bucket的output目錄也可以看到下載的壓縮文件。

實驗數據

場景

文件數

壓縮前總大小

壓縮后總大小

執行時間

1

7

1.2 MB

1.16 MB

0.4s

2

57

1.06 GB

0.91 GB

63s

您可以通過以上表格獲取以下兩個信息:

  • 場景1說明使用函數計算實現多個文件的下載,可以減少文件的存儲空間。

  • 場景2說明使用函數計算實現多個文件的下載,可以在短時間內下載大量文件。

相關文檔

如果您需要解壓上傳到OSS的ZIP文件,可以在函數計算部署函數實現ZIP文件自動解壓,也可以直接在OSS配置ZIP文件自動解壓,具體請參見使用函數計算實現自動解壓上傳到OSS的ZIP文件ZIP包解壓