首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我可以通过Web.Config连接字符串优化我的数据库连接吗?

我可以通过Web.Config连接字符串优化我的数据库连接吗?
EN

Stack Overflow用户
提问于 2012-12-31 02:44:35
回答 1查看 764关注 0票数 0

我只想知道我们的connectionstring字段中是否有属性或属性,以便我们可以维护与客户端的优化数据库连接。通常,I use.That只包含所需的信息。

代码语言:javascript
运行
复制
<add name ="ConnectionString" connectionString="Data Source=118.225.221.7;Initial Catalog=mycatalogue;
User Id=dba; password=some_password"/> 

另一种情况下,我们也可以增强用于MARS和异步操作的连接字符串:

代码语言:javascript
运行
复制
MARS
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
MultipleActiveResultSets=true;

Asynchronous Processing
Server=myServerAddress;Database=myDataBase;Integrated Security=True;
Asynchronous Processing=True;

从我们的页面上,我有4-5个,有时甚至~10个连接来访问数据。以100个用户同时访问同一页面为例,假设代码正在执行"SELECT"语句,并为每个客户端提取一些随机行。然后,400-500个连接将一次访问数据库,我认为这肯定会降低服务器/应用程序的性能。

所以我想知道,我应该最小化查询的数量,还是把它留给.Net框架智能。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-31 03:23:00

首先看看优化你的linq,例如,当所有的信息都可以通过一个调用拉取时,确保你不会进行两次查询。

另请看缓存。在这里,您必须决定数据应该缓存多长时间、何时使其无效(例如,由某人插入记录)以及在什么级别上执行此操作。如果您的页面很少更改,并且不是很繁重的插入/更新,那么您可以在页面级进行缓存(页面级缓存)。

如果这不是一种选择,您可以考虑使用httpcontext.current.cache之类的东西缓存从linq返回的数据,快速的谷歌搜索将显示详细信息,但本质上是缓存从linq查询返回的数据,在后续请求时,您首先检查缓存以查看数据是否在那里,如果有,则使用缓存,如果没有,则转到数据库并再次请求。这将限制对数据库的命中。

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

https://stackoverflow.com/questions/14093514

复制
相关文章

相似问题

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