최신 ASP.NET MVC 및 Entity Framework (MVC 5.2.2, EF 6.1.2) 및 최신 Glimpse를 사용하고 있습니다. 여러 개의 중첩 된 자식 개체가있는 엔티티를 열심히로드하는 쿼리 시간을 개선하고 탐색 속성을 가져 오기 위해 .Include ("Object.Child")를 사용하여 쿼리 수를 줄였습니다. 처음에 나는 좋은 결과를 얻고 있다고 생각했는데, Glimpse의 SQL 탭에서 "Total query execution time"이 현저하게 줄어들었다. 그러나 "총 연결 열기 시간"은 높게 유지되며 그 결과 결합 된 메가 쿼리에 대해 매우 길다. 아래 스크린 샷을 참조하십시오.Entity Framework/Glimpse Duration Disparity
두 사람의 차이점이 무엇인지 알 수있는 사람이 있는지 궁금합니다. Glimpse는 내 명령이 < 100ms 걸리지 만 SQL 연결이 5 초 이상 걸린다 고 말합니다. 이 경우 쿼리는 많은 조인 등으로 인해 지저분하지만 실제로 쿼리 자체가 100ms 이내에 완료되는 경우 시간이 어디로가는 지 명확하지 않습니다.
참고 : 여기서 why two durations에 대한 답변을 보았지만 각각의 특성을 설명하지는 않습니다. 질문을위한
고마워요. 앤서니. 컨텍스트는 컨트롤러가 인스턴스화 될 때 생성되는데, 컨트롤러가 요청 될 때마다 발생한다고 생각되며 요청이 끝날 때 폐기 처리됩니다. A.B.C와 같은 계층 구조를 가진 복잡한 엔티티가 있습니다. 컨텍스트를 호출 할 때 .AObjects.Include ("A.B.C") 결과 쿼리의 연결 기간은 길지만 쿼리 실행 기간이 상대적으로 짧습니다. –
쿼리가 중복 데이터가있는 조인 된 레코드를 생성하는 경우 추가 시간을 차지하는 데이터 크기가 반환되는지 궁금합니다. Glimpse는 반환 된 결과 집합의 크기를 볼 수있는 방법이 있습니까? –