Entity Framework Async: 예상치 못한 성능 병목 현상
비동기 컨트롤러 및 데이터베이스 작업으로 마이그레이션(ToListAsync()
대신 ToList()
사용)하면 애플리케이션 성능이 향상되는 경우가 많습니다. 그러나 항상 그런 것은 아닙니다. 최근 시나리오에서는 비동기식 방법으로 전환하면 쿼리 실행 속도가 크게 느려졌습니다. 간단한 데이터베이스 조인으로 "Album" 개체를 검색하는 다음 쿼리는 이 문제를 보여줍니다.
<code class="language-csharp">var albums = await this.context.Albums .Where(x => x.Artist.ID == artist.ID) .ToListAsync();</code>
생성된 SQL 쿼리는 다음과 같습니다(간결하게 하기 위해 잘림).
<code class="language-sql">SELECT [Extent1].[ID] AS [ID], [Extent1].[URL] AS [URL], [Extent1].[ASIN] AS [ASIN], ...</code>
위 내용은 내 Entity Framework 비동기 작업이 동기 작업보다 느린 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!