首页 > 代码库 > 面试常见问题-SQL

面试常见问题-SQL

1.大数据并发的处理

大并发大数据量请求一般会分为几种情况:

1.大量的用户同时对系统的不同功能页面进行查找,更新操作

服务器层面的处理:

1. 调整IIS 7应用程序池队列长度

由原来的默认1000改为65535。

IIS Manager > ApplicationPools > Advanced Settings

Queue Length : 65535

2.  调整IIS 7的appConcurrentRequestLimit设置

由原来的默认5000改为100000。

c:\windows\system32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000

在%systemroot%\System32\inetsrv\config\applicationHost.config中可以查看到该设置:

[html] view plaincopy
  1. <serverRuntime appConcurrentRequestLimit="100000" />   

3. 调整machine.config中的processModel>requestQueueLimit的设置

由原来的默认5000改为100000。

[html] view plaincopy
  1. <configuration>  
  2.     <system.web>  
  3.         <processModel requestQueueLimit="100000"/>   

4. 修改注册表,调整IIS 7支持的同时TCPIP连接数

由原来的默认5000改为100000。

reg add HKLM\System\CurrentControlSet\Services\HTTP\Parameteris /v MaxConnections /t REG_DWORD /d 100000 

完成上述4个设置,就基本可以支持10万个同时请求。如果访问量达到10万以上,就可以考虑将程序和数据库按功能模块划分部署到多个服务器分担访问压力。

数据库层面的处理:

 

2.大量的用户同时对系统的同一个页面,同一个表的大数据量进行查询操作

1.对表按查询条件建立索引

2.对查询语句进行优化

3.可以考虑对查询数据使用缓存

 

3.大量的用户同时对系统的同一个页面,同一个表进行更新操作

  

面试常见问题-SQL