Currently at my workplace we are using fciv.exe with vbscript that was created long before I got this job. Now I am trying to use msdeploy in powershell with -whatif -checksum options to see if there are any differences in the servers and output them in a text file. My goal is make a much more efficient and faster script to check all folders/files throughout the servers but I found out that msdeploy is not actually that much faster than fciv.exe
Do you have any other alternatives that I can work on? I prefer not installing in productions servers because I run the scripts in staging boxes so it won't impede in any performance issues.
Any program that generates checksums basically has to do the same thing (read the entire file from disk, perform some crypto calculations on the data), and you're not likely to improve performance on that. However, your script could save some time by only generating checksums of files that have identical byte sizes (though this is only a performance increase when differences exist; to compare two identical folder structures, you'd still be generating checksums of everything.)
One possible compromise is that you could check the Last Write Time of files, and assume that if Size / timestamp are identical, you don't need to bother with a checksum. It's technically possible that some differences might sneak through if you take this approach, but it would be much faster in many cases. This is how Robocopy works; it checks file size / timestamps to decide what needs to be transferred.