Temporary file system service
This service is responsible for managing temporary files. TMP files are created:
- When uploading files, chunks are stored in the TMP folder before merging and moving to the final storage destination
- When creating and extracting archives (zip files)
- When downloading multiple files, they are copied into TMP folder before zipping
Tmp files are usually removed immediately after the use. For expired files, configurable garbage collection is used:
'Filegator\Services\Tmpfs\TmpfsInterface' => [ 'handler' => '\Filegator\Services\Tmpfs\Adapters\Tmpfs', 'config' => [ 'path' => __DIR__.'/private/tmp/', 'gc_probability_perc' => 10, 'gc_older_than' => 60 * 60 * 24 * 2, // 2 days ], ],
Note: if you want to use this script as a stateless app or in any kind of multi-node environment, you must mount a single shared TMP folder for all the instances. You can solve this problem with Amazon Elastic File System or similar approach.