8

ファイルが同期される前に MSDeploy パッケージ全体がアップロードされるか、または msdeploy.exe と msdeploy.axd の間で同期が行われるか (変更されたファイルのみがアップロードされます) を確認できますか (できればドキュメントへのリンクを使用)。

別の言い方をすれば、変更されたファイルが 1 MB しか含まれていない 1 GB のパッケージ zip がある場合、msdeploy は 1 GB のパッケージ全体を MsDeploy.axd にアップロードし、サーバーで同期を実行する、1 MB のパッケージのみをアップロードします。ファイルを変更しましたか?

4

3 に答える 3

3

このドキュメントは、観察した動作が決定論的であると信頼できるほど公式なものですか?

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

セクション「Web Deploy と FTP の比較」のポイント 1:

Web Deploy は FTP よりも高速です。Web Deploy は、操作ごとに異なるコマンドを発行しません。代わりに、同期の開始時に比較を行い、変更のみを転送します。

于 2012-09-16T22:13:40.777 に答える
1

同様の質問に対するマイクロソフトの従業員からの回答は次のとおりです。http://forums.asp.net/post/4361026.aspx

また、パッケージがどのように組み立てられるかのプロセスを詳述する非常に役立つ記事があります: http://blog.winhost.com/using-msdeploy-to-publish-your-site/

于 2012-09-15T18:01:15.710 に答える
1

MSDeploy をプロキシ経由で実行するのは難しいため、単純に巨大なファイル (750 MB) を使用してプロセスをより明確にしました。

エージェント サービス ( ) については、パッケージ全体がアップロードされていないhttp://localhost:80/MsDeployAgentServiceことを確認できます。サーバー (localhost) からファイルを削除すると、展開に約 25 秒かかります。ファイルが既にそこにあれば、展開はほぼ瞬時に行われます。私のマシンの仕様を考えると、その間に750MBをメモリに転送する方法はありません(HTTP経由で転送することは言うまでもありません)。

更新リモート (同じネットワークではありますが)MsDeploy.axdサービスにデプロイする場合も、同じ動作を確認できます。最初の展開は 50 秒で、次の展開は 1 秒未満でした。

Update 2 IIS チームの Kristina Olson は、彼女のコメントでこれを確認しました。

Web Deploy は 2 つの部分で増分同期を行うため、最初の部分ではパッケージ内のファイル コンテンツに関するメタデータのみを送信して、実際に更新が必要なファイルを特定し、2 番目の部分ではそれらの増分更新ファイルのみがネットワーク経由で送信されるようにします。基本的に、すべてのファイルに関するメタデータ (名前、サイズ、書き込み時間など) はネットワーク経由で送信されますが、実際のファイルの内容は、ファイルの更新が必要でない限り送信されません。

于 2012-09-16T12:07:29.333 に答える