ASP.NET高并发问题

kyle315 2012-11-08 12:57:49
ASP.NET IIS服务器,在主流服务器下,大概能支持多大的并发?在500个并发的情况下,该做如何配置,多谢。
...全文
876 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
jhdxhj 2013-02-27
  • 打赏
  • 举报
回复
引用 16 楼 sbwwkmyd 的回复:
500算不上什么并发,网站做好缓存快速响应就可以了。 如果32位程序因为连接数过多导致内存不足的话,请使用64位程序。
+1
showjim 2013-02-26
  • 打赏
  • 举报
回复
500算不上什么并发,网站做好缓存快速响应就可以了。 如果32位程序因为连接数过多导致内存不足的话,请使用64位程序。
happytonice 2013-02-26
  • 打赏
  • 举报
回复
分析可能产生瓶颈的地方,重点解决
xuhautian 2013-02-26
  • 打赏
  • 举报
回复
500 个并发, 主流服务器和带宽上 ,IIS 基本没问题。
CSMSDN 2012-11-09
  • 打赏
  • 举报
回复
跟IIS关系不过,不过IIS可以限制它,
手可摘星辰 2012-11-09
  • 打赏
  • 举报
回复
tang1559564918 2012-11-09
  • 打赏
  • 举报
回复
绝对支持楼上的哥们
SeanDing1989 2012-11-09
  • 打赏
  • 举报
回复
哥们,硬件也要跟得上。
chen_ya_ping 2012-11-08
  • 打赏
  • 举报
回复
这个跟你的机器的配置,软件的设计,缓存的使用,数据库的设计,有着很大的关系,跟IIS其实关系倒是不大
mizuho_2006 2012-11-08
  • 打赏
  • 举报
回复
可以使用压力测试软件做一下服务器的压力测试。
TonyNIFFFFFFFF 2012-11-08
  • 打赏
  • 举报
回复
实际上一个网站能支持多大的访问量,在于这个网站的架构和代码写得好不好! 兄弟,我这里只能帮你 提高一下IIS的并发量。 IIS 7.0使用的是默认配置,服务器最多只能处理5000个同时请求。

根据相关文档调整设置,可以让服务器从设置上支持10万个同时请求

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中可以查看到该设置:
 
<serverRuntime appConcurrentRequestLimit="100000" />  
3. 调整machine.config中的processModel>requestQueueLimit的设置
 
由原来的默认5000改为100000。
 
<configuration>
     <system.web>
         <processModel requestQueueLimit="100000"/>  
 
参考文章:http://technet.microsoft.com/en-us/library/dd425294(office.13).aspx
 
4. 修改注册表,调整IIS 7支持的同时TCPIP连接数
 
由原来的默认5000改为100000。
 
reg add HKLM\System\CurrentControlSet\Services\HTTP\Parameters /v MaxConnections /t REG_DWORD /d 100000 
 
完成上述4个设置,就可以支持10万个同时请求。
IT刀客 2012-11-08
  • 打赏
  • 举报
回复
编写程序时要注意使用缓存,将页面相同的部分都缓存了,可以提高访问速度。另外500个并发用户对IIS来说就是个P,只要带宽没问题,500个并发是没问题的。既然硬件没问题,剩下的就是软件问题,包括代码的瘦身问题,你不能让每个页面弄得都几MB大,所以这些都是程序具体实施的问题的了。稍微有点程序基础的,就能运行,高手嘛自然是能让程序健壮性和可靠性更好了。这些可不是别人说说你就能立马用得上的,需要时间和实践积累。
kyle315 2012-11-08
  • 打赏
  • 举报
回复
多谢楼上各位。 目前带宽问题不大,服务器性能尚可。大家都提到了从程序入手,我想问下,对于高并发,在编写程序时要注意哪些?
ycproc 2012-11-08
  • 打赏
  • 举报
回复
500个真不多。所以很多取决于硬件和程序。
洳夢绚染 2012-11-08
  • 打赏
  • 举报
回复
这个不完全是iis的事情,其实你的服务器硬件配置和供应商带宽对你的影响更大一点。 还包括你自己的应用程序写的如何。
xuan.ye 2012-11-08
  • 打赏
  • 举报
回复
引用 1 楼 bdmh 的回复:
别把这些都指望与iis,这和你的机器配置、网络状况以及你的程序有很大关系
确实和这些都有关系,刨除这些如果觉得压力大,可以尝试wcf
bdmh 2012-11-08
  • 打赏
  • 举报
回复
别把这些都指望与iis,这和你的机器配置、网络状况以及你的程序有很大关系
作为ASP.NET项目的开发者,在应对用户的Word、Excel文档时,您是否迫切希望Visual Studio工具箱里能有现成的Word、Excel标准ASP.NET控件可用就太好了?现在梦想已经成真,想在网页上显示编辑Word、Excel文档并且调用微软Office的强大功能,就直接从工具箱拖动一个PageOffice控件到Web页面上就可以了,就和使用常用的TextBox控件一样简单方便。 PageOffice是什么? PageOffice for ASP.NET是一款非常优秀的专业的集成微软OFFICE功能的ASP.NET控件平台,能够帮助Web开发人员轻松实现在网页中嵌入运行微软Office的特殊功能。PageOffice把微软复杂的Office编程接口(COM API) 有效地整合于 ASP.NET 环境,通过简化的.NET类库接口为开发者提供了在Web项目里获得Office众多强大功能的机会,并且能够同时利用来自 .NET Framework 的开发效率和软件功能。 集成PageOffice不但能够实现在线编辑、保存真正的Office文档,而且还可以轻松实现Word、Excel文档的动态数据填充、格式控制和用户输入提交的高级复杂功能。只要集成PageOffice,您将能够轻松应对在Web项目开发中遇见的绝大部分和Office文档有关的功能和难题。您只需把精力集中在项目业务逻辑上,Office技术问题就交给PageOffice实现解决吧。 PageOffice除了提供Word/Excel动态数据填充,格式控制,Word/Excel用户输入提交,Word/Excel/PowerPoint/WPS等Office文档的在线打开、只读浏览、编辑、保存等功能外,还给在线协同办公提供了强大的支持功能:可编辑区域控制,强制痕迹保留,并发编辑控制,手写批注,手写签名,圈阅签字,电子印章、动态模板套红等。 专业的MSDN风格的开发帮助,上百的示例代码,确保您的开发效率事半功倍。 运行环境 服务器端:Windows2003、Windows2008、Windows2012及Windows XP、Windows7、Windows8等(包括64位版本);.Netframework2.0及以上版本。 客户端:Windows XP、Windows Vista、Windows7、Windows8及以上版本(包括64位版本);Microsoft Office2003、2007、2010、2013;IE 6.0、7.0、8.0、9.0、10.0。 名称:PageOffice for ASP.NET专业版 2.0 下载:http://www.zhuozhengsoft.com/down/PageOffice_ASP.NET.rar 大小:13.8MB 版本:专业版 2.0
项目是基于ASP.NET的Web应用程序开发,旨在构建一个高性能、可扩展和可靠的在线平台。我们将使用ASP.NET MVC框架和C#编程语言来实现这个项目。 ASP.NET MVC是一种成熟的开发框架,它采用模型-视图-控制器的设计模式,将应用程序的逻辑和界面分离,提供了更好的代码组织和可维护性。我们选择ASP.NET MVC框架是因为它具有良好的可扩展性和灵活性,可以轻松地添加新功能和模块。 在技术方案上,我们将采用以下几个关键技术: 数据库集成:我们将使用Entity Framework作为ORM(对象关系映射)工具,与数据库进行集成。Entity Framework提供了一种简单且强大的方式来访问和操作数据库,可以大大简化数据访问层的开发工作。 安全性保护:我们将使用ASP.NET提供的身份验证和授权功能,确保只有经过授权的用户可以访问敏感数据和功能。我们还将使用加密技术来保护用户的敏感信息,如密码和支付信息。 缓存管理:为了提高应用程序的性能,我们将使用ASP.NET提供的缓存机制来缓存常用的数据和页面。这将减少对数据库和服务器的访问次数,提高应用程序的响应速度和吞吐量。 异步编程:我们将使用ASP.NET提供的异步编程模型来处理并发请求和长时间运行的任务。这将提高应用程序的并发能力和响应性能,确保用户在高负载情况下仍然能够流畅地使用应用程序。 性能优化:我们将使用一系列性能优化技术来提高应用程序的性能。这包括使用高效的算法和数据结构、使用缓存技术和数据库索引、进行代码优化和资源管理等。 通过采用这些技术方案,我们的项目将能够提供一个高性能、可扩展和可靠的Web应用程序。我们将遵循最佳的软件开发实践,进行系统测试和性能测试,以确保应用程序的质量和稳定性。

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧