Heim >Backend-Entwicklung >C++ >Warum ist der asynchrone Betrieb meines Entity Frameworks 10x langsamer?

Warum ist der asynchrone Betrieb meines Entity Frameworks 10x langsamer?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-10 18:31:42635Durchsuche

Why is My Entity Framework Async Operation 10x Slower?

Entity Framework Async: Ein zehnfacher Leistungsabfall

Das Problem:

Die Migration von Datenbankinteraktionen auf asynchrone Methoden innerhalb von Entity Framework 6 führt unerwartet zu einem dramatischen Leistungsabfall. Asynchrone Vorgänge laufen in diesem Fall zehnmal langsamer als ihre synchronen Äquivalente.

Untersuchung:

Sehen wir uns einen repräsentativen Codeausschnitt an:

<code class="language-csharp">var albums = await this.context.Albums
    .Where(x => x.Artist.ID == artist.ID)
    .ToListAsync();</code>

Diese asynchrone Abfrage ruft Alben ab, die einem bestimmten Künstler zugeordnet sind. Überraschenderweise bleibt das generierte SQL identisch mit seinem synchronen Gegenstück:

<code class="language-sql">SELECT 
[Extent1].[ID] AS [ID], 
[Extent1].[URL] AS [URL], 
[Extent1].[ASIN] AS [ASIN], </code>

Das obige ist der detaillierte Inhalt vonWarum ist der asynchrone Betrieb meines Entity Frameworks 10x langsamer?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn