Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 27|Válasz: 0

[Tippek] WITH (NOLOCK) optimalizálás magas egyidejű EF Core lekérdezésekhez

[Linket másol]
KözzétéveTegnap 20:48-kor | | |
Követelmények: Néhány adat lehetővé teszi a piszkos olvasást, például cikktartalom, oldalmegtekintések, hozzászólások stb., amelyek nem olyan szigorúak, mint a pénzügyi adatok. A lekérdezések teljesítményének javítása érdekében ReadUncommitted tranzakciókat használhatnak, de a SqlTransaction és a TransactionScope szivárgás-izolációs szintű hibákat tartalmaz, amelyeket még nem javítottak, ezért fontold meg az WITH (NOLOCK) megoldás használatát.

Szemle:
Entity Framework lekérdezés optimalizálása WITH(NOLOCK)
https://www.itsvse.com/thread-9513-1-1.html

.NET/C# a SQL utasítások parse-ezésére és végrehajtására használja a SqlScriptDOM-ot
https://www.itsvse.com/thread-11222-1-1.html

A SqlTransaction és a TransactionScope szivárgás izolációs szintjei (ez a hiba már 8 éve létezik, és még mindig nem javították!) Úgy becsülem, sokan érintettek lehetnek, de lehet, hogy nem veszik észre):A hiperlink bejelentkezés látható.

Ennek a cikknek a SqlScriptDOM-ra kell hivatkoznia az SQL utasítások elemzéséhez, és hozzáadnia kell a WITH(NOLOCK) utasítást. Lásd a nyílt forráskódú projektet:A hiperlink bejelentkezés látható.

A Nuget a következőképpen idéz:
Hozz létre egy új AllowDirtyReadAttribute.cs funkciót, kódolj a következőként:
Hozz létre egy új WithNoLockInterceptort, hogy felülírja bizonyos módszereket a DbCommandInterceptorban. A kód a következő:
A következő konfigurációval fecskendezzük be az EF Core-ba:
Használd a vezérlő módszer fölé adni[AllegDirtyRead]Tud.

Nyers SQL állítás:
SELECT [o]. [Id],
         [o]. [CustomerName],
         [o0]. [Id],
         [o0]. [OrderId],
         [o0]. [Termék]
FROM [Parancsok] AS [o]
             BAL KÜLSŐ CSATLAKOZÁS
         [OrderLines] AS [o0]
         ON [o]. [Id] = [o0]. [OrderId]
HOL [o]. [Id] = 1
PARANCS: [o]. [Id];

A NOLOCK hozzáadása után generált állítás:
SELECT [o]. [Id],
         [o]. [CustomerName],
         [o0]. [Id],
         [o0]. [OrderId],
         [o0]. [Termék]
FROM [Parancsok] AS [o] WITH (NOLOCK)
         BAL KÜLSŐ CSATLAKOZÁS
         [OrderLines] AS [o0] WITH (NOLOCK)
         ON [o]. [Id] = [o0]. [OrderId]
HOL [o]. [Id] = 1
PARANCS: [o]. [Id];




Előző:(MSSQL) SQL Server teljes szöveges keresés, teljes szöveges index
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com