Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 27|Vastaus: 0

[Vinkkejä] WITH (NOLOCK) optimointi korkean samanaikaisen EF-ydinkyselyn osalta

[Kopioi linkki]
JulkaistuEilen klo 20:48 | | |
Vaatimukset: Jotkut tiedot sallivat likaisen lukemisen, kuten artikkelisisällön, sivun katselut, kommentit jne., mikä ei ole yhtä vaativaa kuin taloustiedot. Kyselysuorituskyvyn parantamiseksi voidaan käyttää ReadUncomcomd-transaktioita, mutta SqlTransactionissa ja TransactionScopessa on vielä korjaamattomia vuodoneristystason bugeja, joten harkitse WITH (NOLOCK) -ratkaisun käyttöä.

Arvostelu:
Entity Frameworkin kyselyoptimointi KANSSA(NOLOCK)
https://www.itsvse.com/thread-9513-1-1.html

.NET/C# käyttää SqlScriptDOMia jäsentämiseen ja SQL-lauseiden suorittamiseen
https://www.itsvse.com/thread-11222-1-1.html

SqlTransaction ja TransactionScope vuodon eristystasot (tämä bugi on ollut olemassa 8 vuotta eikä sitä ole vieläkään korjattu!) Arvioin, että monet saattavat olla vaikutuksen alaisia, mutta eivät välttämättä tajua sitä):Hyperlinkin kirjautuminen on näkyvissä.

Tämän artikkelin tulee viitata SqlScriptDOM:iin jäsentääkseen SQL-lauseet ja lisätäkseen WITH(NOLOCK). Viittaa avoimen lähdekoodin projektiin:Hyperlinkin kirjautuminen on näkyvissä.

Nuget lainaa seuraavasti:
Luo uusi AllowDirtyReadAttribute.cs-ominaisuus, koodaa seuraavasti:
Luo uusi WithNoLockInterceptor ohittamaan tietyt metodit DbCommandInterceptorissa. Koodi on seuraava:
Injektoi EF-ytimeen seuraavalla kokoonpanolla:
Käytä lisätäksesi sen ohjainmenetelmän yläpuolelle[SalliLikainen lukea]Voida.

Raaka SQL-lause:
VALITSE [o]. [id],
         [o]. [Asiakasnimi],
         [o0]. [id],
         [o0]. [OrderId],
         [o0]. [Tuote]
LÄHETTÄJÄNÄ [Käskyt] AS [o]
             VASEN ULKOLIITOS
         [OrderLines] AS [o0]
         ON [o]. [Id] = [o0]. [Tilaustunnus]
MISSÄ [o]. [Id] = 1
KÄSKY [o]. [Id];

Lause, joka syntyy NOLOCKin lisäämisen jälkeen:
VALITSE [o]. [id],
         [o]. [Asiakasnimi],
         [o0]. [id],
         [o0]. [OrderId],
         [o0]. [Tuote]
FROM [Käskyt] AS [o] WITH (NOLOCK)
         VASEN ULKOLIITOS
         [OrderLines] AS [o0] KANSSA (NOLOCK)
         ON [o]. [Id] = [o0]. [Tilaustunnus]
MISSÄ [o]. [Id] = 1
KÄSKY [o]. [Id];




Edellinen:(MSSQL) SQL Server kokotekstihaku, kokotekstihakemisto
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com