Hi @Jakub Janiš ,
3-4 seconds of recovery time is really fast
Here is an optimized way:https://www.mssqltips.com/sqlservertip/4935/optimize-sql-server-database-restore-performance/
you can configure trace flags globally. DBCC TRACEON (3213, -1)
this outputs information for backups and restores. According to the information you get, you can adjust some settings to increase the Total Buffer Space.
Using some additional parameters, about Max Transfer Size and Buffer Count, may be can use more memory to make the restore run faster
https://learn.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/ms190954(v=sql.105)?redirectedfrom=MSDN#optimizing-transaction-log-backup-performance
-------
If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".