很抱歉,您提供的信息不完整,我无法直接给出答案。请您提供更具体的问题或信息,这样我才能更好地帮助您。
- 内容介绍
- 文章标签
- 相关推荐
本文共计842个文字,预计阅读时间需要4分钟。
前言+性能优化,简而言之,就是在不影响系统正常运行的前提下,提升运行速度,缩短完成特定功能所需的时间。对于EF+Core的查询优化,其实也是多种多样的,性能优化主要体现在特定的上。
前言
性能优化,简而言之,就是在不影响系统运行正确性的前提下,使之运行地更快,完成特定功能所需的时间更短。
对于EF Core的查询优化其实也是多种多样的,性能优化是在特定的情况下的特定解决方案,下面着重介绍EF Core的显示编译查询
1.显示编译的概念
EF Core对我们查询的表达式的编译使用了缓存,当你查询代码需要重用以前执行的查询时,EF Core将使用哈希查找并从缓存中返回已编译的查询。如果能直接对查询进行编译,并跳过哈希的计算和缓存查找那么效率是否会提高呢?这就是显示编译。
说白了也就是跳过查找的过程,而且使用场景如下:
- EF Core,还不支持编译查询返回集合类型。
- 在数据量大的时候使用,比如查询大于一百万次时候大约回快6倍,一万次大约是2倍左右。
一、Core性能优化之显示编译
本文主要是内存数据库的方式来测试显示编译查询的性能,避免了其他因素。
显示编译的两个方法如下:
EF.CompileQuery()//同步方法
EF.CompileAsyncQuery()异步方法
这两个方法允许您定义一个已编译的查询,然后通过调用一个委托调用它。
本文共计842个文字,预计阅读时间需要4分钟。
前言+性能优化,简而言之,就是在不影响系统正常运行的前提下,提升运行速度,缩短完成特定功能所需的时间。对于EF+Core的查询优化,其实也是多种多样的,性能优化主要体现在特定的上。
前言
性能优化,简而言之,就是在不影响系统运行正确性的前提下,使之运行地更快,完成特定功能所需的时间更短。
对于EF Core的查询优化其实也是多种多样的,性能优化是在特定的情况下的特定解决方案,下面着重介绍EF Core的显示编译查询
1.显示编译的概念
EF Core对我们查询的表达式的编译使用了缓存,当你查询代码需要重用以前执行的查询时,EF Core将使用哈希查找并从缓存中返回已编译的查询。如果能直接对查询进行编译,并跳过哈希的计算和缓存查找那么效率是否会提高呢?这就是显示编译。
说白了也就是跳过查找的过程,而且使用场景如下:
- EF Core,还不支持编译查询返回集合类型。
- 在数据量大的时候使用,比如查询大于一百万次时候大约回快6倍,一万次大约是2倍左右。
一、Core性能优化之显示编译
本文主要是内存数据库的方式来测试显示编译查询的性能,避免了其他因素。
显示编译的两个方法如下:
EF.CompileQuery()//同步方法
EF.CompileAsyncQuery()异步方法
这两个方法允许您定义一个已编译的查询,然后通过调用一个委托调用它。

