Momentan sunteți offline, așteptați să vă reconectați la internet

Probleme de performanță atunci când utilizați WCF pentru a trimite mesaje XML SOAP în .NET Framework 4.6

IMPORTANT: Acest articol este tradus cu ajutorul software-ului Microsoft de traducere automată și poate fi corectat prin intermediul tehnologiei Community Translation Framework (CTF). Microsoft oferă articole traduse automat, post-editate de comunitate și articole traduse de oameni, pentru a permite accesul la toate articolele din Baza noastră de cunoștințe în mai multe limbi. Articolele traduse automat și post-editate pot conține greșeli de vocabular, sintaxă și/sau gramatică. Microsoft nu este responsabil de inexactitățile, erorile sau daunele cauzate de traducerea greșită a conținutului sau de utilizarea acestuia de către clienți. Găsiți mai multe informații despre traducerea în colaborare la http://support.microsoft.com/gp/machine-translation-corrections/ro.

Faceți clic aici pentru a vizualiza versiunea în limba engleză a acestui articol: 3076436
Simptome
Să presupunem că ați făcut upgrade la Microsoft .NET Framework 4.6 pe computer. Când utilizați o aplicație care utilizează Windows Communication Framework(WCF) pentru a trimite mesaje XML SOAP, codificarea poate dura mai uşor. În unele cazuri, aceasta poate afecta rata la care o aplicație de server poate procesa cereri.
Cauză
Această problemă se produce din cauza un compilator Just-In-Time (JIT) nou, denumit RyuJIT. Această compilator utilizează diferite optimizări decât compilator JIT64 moștenite. O metodă de pe o Cale rapidă cod pentru codificarea șiruri înXmlDictionaryWriter nu este optimizat pentru compilatorul JIT noi și instrucțiunile native generat execută mai lent și codificarea durează mai. Atunci când un mesaj SOAP conține un număr mare de șiruri pentru a fi codificat, acest cod mai lente este utilizat mai frecvent și poate afecta ora codificare.
Rezoluţie
Pentru a rezolva această problemă, configurați aplicația pentru a dezactiva utilizarea ngen pentru System.Runtime.Serialization.dll asamblare și se utilizează motorul JIT moștenite. Pentru aceasta, utilizați una dintre următoarele metode:
  • Setați variabilele de mediu următoarele:

    COMPLUS_useLegacyJit = 1
    COMPLUS_DisableNativeImageLoadList=System.Runtime.serialization
  • În registry, creați oricare dintre următoarele subchei:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\. NETFramework
    HKEY_CURRENT_USER\SOFTWARE\Microsoft\. NETFramework

    Apoi, adăugați următoarele valori:
    • Nume de cheie: useLegacyJit
      Tip: REG_WORD
      Valoare: 1
    • Nume de cheie: DisableNativeImageLoadList
      Tip: REG_SZ
      Valoare: System.Runtime.Serialization
  • Adăugați următorul text la <app>. exe.config fișier. Creați secțiuni indicată, dacă nu există deja.</app>
    <configuration>         <runtime>              <useLegacyJit enabled="1">             <disableNativeImageLoad>                 <assemblyIdentity name="System.Runtime.Serialization" />             </disableNativeImageLoad>          </runtime>     </configuration>


Pentru mai multe informații despre problemele cunoscute în .NET Framework 4.6, consultați Probleme cunoscute pentru .NET Framework 4.6.
Informaţii suplimentare
Pentru mai multe informații despre produs versioning modificările și efectele lor în .NET Framework 4.6, consultațiCompatibilitatea stratul aplicaţiilor în .NET Framework 4.6.

Avertisment: acest articol a fost tradus automat

Proprietăți

ID articol: 3076436 - Ultima examinare: 07/22/2015 17:55:00 - Revizie: 1.0

Microsoft .NET Framework 4.6

  • kbsurveynew kbexpertiseadvanced kbtshoot kbmt KB3076436 KbMtro
Feedback
lementsByTagName("head")[0].appendChild(m);