Nextcloud には、ファイルの分割アップロード(Chunked file upload)という仕組みがあります。
一例として、WEBブラウザやデスクトップクライアントからのファイルアップロード時には、デフォルトでは10MB毎に分割されてファイルがアップロードされています。
分割アップロードの様子は、WebUI経由でのアップロードの場合には、ブラウザの開発者ツール(F12)のネットワークタブでも確認することが可能です。
分割アップロードにより、すべてのデータがWEBサーバ上のバッファにアップロードされるまで待つ必要がなく、次のアップストリーム(PHPやNextcloud)へと10MB毎にデータが次々と渡されていきます。
ファイル分割サイズの設定は、WebUI(ブラウザ)経由でのアップロードの場合には、Nextcloudサーバ側で設定をします。その他のクライアントは、クライアント側の設定が適用されます。
以下に各環境ごとの設定例を記載します。
WebUI(ブラウザアップロード)の場合は、occコマンドで分割サイズ(byte)を設定します。
コマンド例: occ config:app:set files max_chunk_size –value {size}
ただし、URL共有画面(public link)は、分割アップロード機能に対応していません。
マニュアルはこちらです。
デスクトップクライアントの場合には、クライアント側設定ファイルの chunkSize パラメータで設定します。マニュアルはこちらです。
Android アプリの場合は、モバイル回線では1MB、Wi-Fi回線では10MBのチャンクが自動的に選択されます。分割アップロードを無効化することはできません。
iOS アプリの場合は、デフォルトでは分割アップロードが行われません。
アプリ画面下部の「もっと見る」=>「設定」=>「詳細設定」=>「チャンクサイズ(MB)」で設定値の確認が可能です。
以上、Nextcloud 24 時点での挙動でした。