Not sure what your issue is. It is like asking what is the best car without specifying any details... for racing? or for moving heavy cargo?
IMO the best practice is to keep things as simple as possible... and there is no one "the best" set of flags to suit all requirements. If not sure - use defaults.
if rclone copy/sync/move src: dst: works then just use it.
Your remotes configuration looks ok. Only if you have specific issues then look for more specific solution. Default values used by rclone are usually good enough.
There is an issue like "the transferred files are copied into memory or to local hard disk when coping from one remote to another?". This can affect the performance of the node/computer where you are running the transfer, for example.
correct. And what is particular performance impact you are trying to mitigate? One million 1KB files copy vs one 1GB file copy is very different problem.
For example, if the transfer use memory, I need to specify the amount of memory available in the job script.
If transfer use local hard disk, and it is an SSD, this can cause degradation.
We are making circles here:) You want specific answer for very general question. And the answer is use defaults - they try to balance various scenarios to provide the best end user experience.