首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >托管在膝上型计算机上的查询执行速度比在服务器上快。

托管在膝上型计算机上的查询执行速度比在服务器上快。
EN

Server Fault用户
提问于 2017-06-09 17:38:55
回答 1查看 292关注 0票数 -2

当将ASP.MVC应用程序发布到Windows 2012时,我遇到了一个奇怪的问题。

该应用程序相当简单,在访问的大多数页面上,它将查询服务器上承载的Access数据库。

我注意到查询非常慢(通常需要7-10秒来完成),如在MiniProfiler中运行应用程序时所示。

作为一个简单的测试,我决定把这个应用程序放在我的Windows 10笔记本电脑上,看看是否有不同之处,而且速度要快得多(大多数查询都在200 As以下)。

这就是我迄今为止尝试过的:

  • 匹配高级应用程序池设置
  • 匹配防火墙设置
  • 启用链路本地多播名称解析(LLMNR)
  • 确认禁用ODBC跟踪(32和64)
  • 将Access Backoffice.mdb文件移动到服务器的C驱动器(与膝上型计算机相同)
  • 确保web.config匹配(除了connectionString数据源)
  • 在杀毒扫描排除中添加C:\inetpub\wwwroot\websiteC:\Test\Database
  • 将注册表中的MaxBufferSize键值从Access Connectivity Engine中的0增加

有没有人知道我可以尝试调试这个问题的方法,或者任何可能的解决方案?

注意到

我的笔记本电脑和服务器在测试时都在同一个网络上,我正在从ipad上访问这个应用程序。

在服务器本身的浏览器上使用应用程序(url = 10.0.0.1或localhost)时,我也遇到了同样缓慢的情况。

当我从服务器上的控制台应用程序执行完全相同的查询代码时,它的运行速度要快得多(与膝上型计算机一样)。我只是通过asp应用程序来体验这个问题。

笔记本电脑详细信息:

  • 处理器: Intel Core i7-6700HQ CPU @ 2.60GHz
  • RAM :16.0GB
  • 操作系统: Windows 10 x64

服务器详细信息

  • 处理器: Intel Xeon CPU E5-2603 v4 @ 1.70GHz (2个处理器)
  • 内存: 32.0 GB
  • OS : Windows 2012 x64

连接字符串

我尝试了以下几点:

代码语言:javascript
复制
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=W:\My Backoffice.mdb
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Test\My Backoffice.mdb
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\ServerName\W\My Backoffice.mdb
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\ServerName\C\Test\My Backoffice.mdb

16.012.0作为ACE.OLEDB版本,其中W是一个本地服务器驱动器,用作网络共享域。所有这些都给出了同样的结果。

EN

回答 1

Server Fault用户

发布于 2017-06-09 20:45:14

如果你的笔记本电脑有SSD,那就可以解释我了。SSD具有10倍于主轴驱动器的IOPS性能。可能值得看一下MVC编码,看看程序是否有一些处理或代码迭代,这可能会减慢web应用程序的速度。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/854913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档