Is the whole package loaded in MsDeploy.axd?

Can someone confirm (preferably with a link to the documents) whether MSDeploy packages will be downloaded completely before the files are synchronized or if there will be synchronization between msdeploy.exe and msdeploy.axd (when downloading only modified files)

Or, if so, if I have a 1 GB mail package that contains only 1 MB modified files, will msdeploy upload the entire 1 GB package to MsDeploy.axd and synchronize it on the server or will it only download 1MB worth changing files?

+7
source share
3 answers

Is this documentation sufficient for you to trust that the behavior you observe is deterministic?

http://www.iis.net/learn/publish/using-web-deploy/introduction-to-web-deploy

Section “How does Web Deploy compare to FTP?”, Paragraph 1:

Web Deploy is faster than FTP. Web Deploy does not execute a separate command for each operation. Instead, it performs the comparison at the start of the synchronization and only transfers the changes.

+3
source

Here is a response from a Microsoft employee on a similar question: http://forums.asp.net/post/4361026.aspx

In addition, here is a very useful entry that describes in detail the process of building packages: http://blog.winhost.com/using-msdeploy-to-publish-your-site/

+1
source

Since it is difficult to get MSDeploy to work through a proxy server, I made the process more obvious just by using a huge file (750 MB).

For the agent service ( http://localhost:80/MsDeployAgentService ) I can confirm that it does not download the entire package. If I delete the file from the server (localhost), the deployment will take ~ 25 seconds. Once the file already exists, the deployment happens almost instantly. Given my machine specifications, at that time it did not transfer 750 MB to memory (not to mention transferring over HTTP).

Update . I can also confirm the same behavior when deploying to a remote (albeit the same network) MsDeploy.axd service. The initial deployment was 50 seconds, the next deployment was <1 second.

Update 2 Christina Olson from the IIS team confirmed this in her comment :

Web Deploy performs incremental synchronization in 2 parts, so in the first part it sends only metadata about the contents of the file in the package to determine which files really need updating, so in the second part only these incremental update files are sent by wire. Basically, metadata about each file (such as name, size, recording time) is sent via cable, but the actual contents of the file are missing if the file does not need updating

+1
source

All Articles