Odata查询似乎非常慢。
当我运行SQL Profiler时,我通过OData(选择前20条记录)执行的查询不到一秒钟即可执行。但是,数据最多需要45秒才能返回到浏览器。
是否有任何方法可以加快速度或精确定位性能的影响点?
我正在使用Microsoft.AspNetCore.OData版本7.0.0-这是一个 .NET Core 程序包
答案 0 :(得分:-1)
由于有些事情您没有弄清楚,因此我将假设1或2件事。我假设您有一个.net核心Web API,该API公开了OData服务/数据库连接。我对此相当确定,只要没有发生任何有趣的事情(例如疯狂的连接数)或您不将整个数据库加载到内存中,那部分就对您的后端来说可能很好。
您也可以检查您的互联网速度是否这么慢?也许真的是糟糕的wifi。
要检查的另一件事是确保问题不仅仅在于您的客户端代码在其他地方调用其他数据,或者您可能是在从api对象到某种视图进行一堆疯狂的映射。我将打开一个浏览器(例如chrome),并使用检查工具查看网络部分,并观察数据加载时api调用所花的时间,然后客户端下载所花的时间,以及转换数据所花的时间。
祝你好运!