大規模なテストログをより少ないメモリでアーカイブ
1021 ワード
ZipFlyはzipfile.pyベースのzipアーカイブジェネレータです.主に、現在非常に大きなZIPアーカイブを生成する際に、大量のメモリを消費する問題を解決するために使用されます.
インストールプロセス
ZipFlyはPython 3.5以上のバージョンサポートが必要で、インストール方式
zipfile deflaterはデータをバッファリングするため、メモリが膨張する現象に制限があります.データはかなり一定の時間間隔でターゲットファイルに書き込まれます.zipfileのデフォルトのプロパティは次のとおりです.
コード使用例:
インストールプロセス
ZipFlyはPython 3.5以上のバージョンサポートが必要で、インストール方式
pip3 install zipfly
使用法の説明zipfile deflaterはデータをバッファリングするため、メモリが膨張する現象に制限があります.データはかなり一定の時間間隔でターゲットファイルに書き込まれます.zipfileのデフォルトのプロパティは次のとおりです.
paths: [ ]
mode: w
chunksize: (bytes) 16384
compression: Stored
allowZip64: True
compresslevel: None
storesize: (bytes) 0
コード使用例:
import zipfly
# fs (filesystem):
# n:
paths = [
{
'fs': 'home/user/Videos/jupiter.mp4',
'n': 'movies/jupiter.mp4',
},
{
'fs': 'home/user/Documents/mercury.mp4',
'n': 'movies/mercury.mp4',
},
]
zfly = zipfly.ZipFly( paths = paths )
generator = zfly.generator()
print ( generator )
with open("test.zip", "wb") as f:
for i in generator:
f.write(i)