memory_limit: I am not aware of any software that needs 2 GB per script run. I'd lower that one to no more than 512M.
max_execution_time: 120 seconds, well, maybe for some bad upload scripts. But maybe you should rather choose something like 30 seconds or even less. It normally never takes more than a few seconds to render a page.
max_input_time: No way. 12000 seconds = 3 hours 20 minutes. I suggest to lower this to any reasonable value, like not higher than 30 seconds. With the current settings users can easily block PHP instances.
post_max_size: 2 GB, really? The PHP default is 2 MB, and if you allow 20 MB, most users will already be very happy. If you need to upload larger files, use an AJAX (asynchronous) uploader instead. With that you can easily upload unlimited large files with a low post_max_size. I suggest to lower the value to 20 MB the most to prevent users from blocking PHP instances with large uploads.
upload_max_filezsize: 4 GB. Way too high. Check post_max_size, the same applies to upload_max_filesize.
pm.max_children: 10. It looks like a reasonable value, but: If you think that you encounter issues with too many concurrent users who all at the same time are running scripts, then you need to raise this. There would be nothing wrong with raising it to for example 40 (just for testing), to ensure that every single one of your 40 users gets his/her own PHP-FPM instance.
pm.max_requests: Choose a high setting like 10000.
max_execution_time: 120 seconds, well, maybe for some bad upload scripts. But maybe you should rather choose something like 30 seconds or even less. It normally never takes more than a few seconds to render a page.
max_input_time: No way. 12000 seconds = 3 hours 20 minutes. I suggest to lower this to any reasonable value, like not higher than 30 seconds. With the current settings users can easily block PHP instances.
post_max_size: 2 GB, really? The PHP default is 2 MB, and if you allow 20 MB, most users will already be very happy. If you need to upload larger files, use an AJAX (asynchronous) uploader instead. With that you can easily upload unlimited large files with a low post_max_size. I suggest to lower the value to 20 MB the most to prevent users from blocking PHP instances with large uploads.
upload_max_filezsize: 4 GB. Way too high. Check post_max_size, the same applies to upload_max_filesize.
pm.max_children: 10. It looks like a reasonable value, but: If you think that you encounter issues with too many concurrent users who all at the same time are running scripts, then you need to raise this. There would be nothing wrong with raising it to for example 40 (just for testing), to ensure that every single one of your 40 users gets his/her own PHP-FPM instance.
pm.max_requests: Choose a high setting like 10000.