.NET Framework の 4.6 に XML SOAP メッセージを送信する WCF を使用すると、パフォーマンスの問題

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:3076436
現象
コンピューターに Microsoft の.NET Framework の 4.6 にアップグレードすることを想定しています。XML SOAP メッセージを送信する Windows 通信 Framework(WCF) を使用するアプリケーションを使用して、エンコードは時間が長くなります。場合によっては、サーバー アプリケーションが要求を処理する速度に影響を与えるこの可能性があります。
原因
この問題は、RyuJIT という新しい Just-In-Time (JIT) コンパイラが原因で発生します。このコンパイラでは、従来の JIT64 コンパイラよりもさまざまな最適化を使用します。ホット コード パスでXmlDictionaryWriter内の文字列をエンコードするためのメソッドが新しい JIT コンパイラの最適化されていない、生成されたネイティブな命令の実行速度が低下し、エンコード時間がかかります。SOAP メッセージのエンコードする文字列の数が多い場合は、この低速のコードがより頻繁に使用され、エンコード時間に影響を与える可能性があります。
解決方法
この問題を回避するには、System.Runtime.Serialization.dll アセンブリの ngen の使用を無効にして、従来の JIT エンジンを使用するアプリケーションを構成します。これを行うには、次の方法のいずれかの手順に従います。
  • 次の環境変数を設定します。

    COMPLUS_useLegacyJit = 1
    COMPLUS_DisableNativeImageLoadList=System.Runtime.Serialization
  • レジストリには、次のサブキーのいずれかを作成します。

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\。NETFramework
    HKEY_CURRENT_USER\SOFTWARE\Microsoft\。NETFramework

    次の値を追加します。
    • キー名: useLegacyJit
      タイプ: REG_WORD
      値: 1
    • キー名: DisableNativeImageLoadList
      種類: REG_SZ
      値: System.Runtime.Serialization
  • <app>に次のテキストを追加します。.exe.config ファイルです。存在しない場合、指定されたセクションを作成します</app>。
    <configuration>         <runtime>              <useLegacyJit enabled="1">             <disableNativeImageLoad>                 <assemblyIdentity name="System.Runtime.Serialization" />             </disableNativeImageLoad>          </runtime>     </configuration>


.NET Framework の 4.6 では、既知の問題に関する詳細については、次を参照してください。 .NET Framework 4.6 の既知の問題.
詳細
製品のバージョン管理の変更と.NET Framework の 4.6 では、その効果についての詳細については、次を参照してください。4.6 の.NET Framework でアプリケーションの互換性.

警告: この記事は自動翻訳されています

プロパティ

文書番号:3076436 - 最終更新日: 05/07/2016 11:09:00 - リビジョン: 2.0

Microsoft .NET Framework 4.6

  • kbsurveynew kbexpertiseadvanced kbtshoot kbmt KB3076436 KbMtja
フィードバック