3 番目の選択肢: アーカイブを毎日作成する「cron」ジョブとして設定します。これは、プロセスがユーザー アクティビティにリンクされておらず、発生することが保証されており、ユーザーを妨げないことを意味します。
編集:どのユーティリティを使用するかについての2番目の部分への回答。
PHP マニュアルに簡単な概要が記載されています: http://php.net/manual/en/phar.fileformat.comparison.php - ただし、基本的に 2 つのタイプまたはアーカイブ/圧縮があります: - Zip、gzip、bzip (圧縮ですが、複数のファイルを 1 つのアーカイブに圧縮する機能) - rar、tar (単一のファイルにアーカイブし、アーカイブを構築する際にサイズを縮小する機能)
圧縮による効果があまり期待できない場合は、アーカイブ機能 (tar/rar など) の 1 つを調べてください。最もよく知られているのは "rar" ですが、ライセンスでは PHP が rar ファイルを作成することを許可していないため、"tar" を使用する必要があります。tar は Linux ファイルで最も一般的です。これは、「phar」http://www.php.net/manual/en/intro.phar.phpという PHP ライブラリを介して行うことができます。
余分なものを絞り出したい場合は、おそらく gzip が最適です (ただし、テストして確認する必要があります)。だからあなたのtarを取り、gzipで圧縮してください。Phar は、1 つの単純なクラスでこれを処理することもできます (phar::compress)。
最後の注意: Linux サーバーを使用している場合は、Linux のパンとバターのようなものであるため、exec() を介して tar および gzip コマンドを (この順序で) 呼び出すことにより、絶対的に最良の結果が得られる場合があります。