应用程序池

重叠处理

匿名 (未验证) 提交于 2019-12-02 23:38:02
使用 IIS 5.0 时,如果一个运行于低隔离模式或运行于中隔离模式的 Web 网站发生了一次失效,那么重启网站的唯一方法就是重启整个 IIS。这样做会导致 IIS 突然停止服务,所以,在重启过程中到达的请求都将发生失效。 IIS 6.0 引入了一种革命性的概念,即重叠处理的概念。基于重叠处理的概念,即使一个应用程序池被回收,所有后来到达的请求仍然可以继续得到服务。IIS 7.0 仍然支持这个概念。 如果某个应用程序池被回收,那么现有的工作进程并没有马上退出,而是启动第二个工作进程,一旦第二个进程启动成功,Http.sys 随即将所有的新的请求发送给这个新的工作进程。当现有的工作进程处理完所有请求之后即关闭退出。因为 Http.sys 可以在将到达的请求发送给新的工作进程之前,完成对已到达的请求进行排队处理的操作,因此,在回收应用程序池的过程中,不会发生丢失页面请求的现象。 尽管在回收应用程序池的过程中不会发生页面请求丢失现象,也不会出现页面请求发生失效的情况,但是对回收过程而言,确实可能存在不良影响,这是因为在回收应用程序池的过程中,所有保存在工作进程中的数据都将丢失。默认情况下,ASP.NET 保存了会话状态数据和进程内缓存数据(我们称之为 InProc 数据)。这些数据的有效时间与工作进程的存活时间完全相同,因此在回收应用程序池的过程中,必须重新创建这些数据。所以

IIS7.5 安全配置研究(推荐)

匿名 (未验证) 提交于 2019-12-02 23:36:01
这篇文章主要介绍了IIS7.5 安全配置研究(推荐),需要的朋友可以参考下 操作系统:Windows Server 2008 R2 Enterprise Service Pack 1 x64 IIS版本:IIS7.5 程序: asp.net IIS7.5的安装 2014030611270847744.jpg http 常见功能:开启静态内容,默认文档,HTTP错误;目录浏览,WebDAV发布如无特殊要求,不要开启;HTTP重定向可根据需要开启。 应用程序开发:这个可根据实际情况开启, 如为asp.net的开启ASP.NET ,.NET扩展性,ISAPI扩展,ISAPI筛选;在服务器端的包含文件根据需要开启。如果服务器安装sql server 2008 好像需要选择安装asp.net 、net扩展性 健康和诊断:建议开启HTTP日志记录,日志记录工具,请求监视;其他可根据需要开启。 安全性:建议开启URL授权,请求筛选,IP和域限制;其他根据需要开启。 性能,管理工具,ftp服务器,IIS可承载的Web核心可根据开启。 IIS7站长之家小编注:如果需要按照服务器安全狗需要安装 IIS 6 管理兼容性 IIS7.5权限配置介绍 IIS7.5涉及两个账户,一个为匿名账户,一个为应用程序池账户。在磁盘的NTFS权限设置中,匿名账户只需要拥有对网站目录的读取权限即可

asp.net core 2.1 部署IIS(win10/win7)

匿名 (未验证) 提交于 2019-12-02 22:06:11
与ASP.NET时代不同,ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是使用自托管Web服务器(Kestrel)运行,IIS则是作为反向代理的角色转发请求到Kestrel不同端口的ASP.NET Core程序中,随后就将接收到的请求推送至中间件管道中去,处理完你的请求和相关业务逻辑之后再将HTTP响应数据重新回写到IIS中,最终转达到不同的客户端(浏览器,APP,客户端等)。而配置文件和过程都会由些许调整,中间最重要的角色便是AspNetCoreModule,它是其中一个的IIS模块,请求进入到IIS之后便立即由它转发,并迅速重定向到ASP.NET Core项目中,所以这时候我们无需设置应用程序池来托管我们的代码,它只负责转发请求而已。 地址: https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.1&tabs=aspnetcore2x 启用“IIS 管理控制台”和“万维网服务”。 1、导航到“控制面板” > “程序” > “程序和功能” > “打开或关闭 Windows 功能”(位于屏幕左侧)。 2、打开“Internet Information Services”节点。 打开“Web 管理工具”节点。 3、选中“IIS 管理控制台”框。

IIS 程序池优化配置方案

回眸只為那壹抹淺笑 提交于 2019-11-29 06:29:15
内容目录 IIS 程序池优化配置方案 IIS高并发配置 一.IIS站点绑定程序池设置 二.支持万级并发请求 IIS 程序池优化配置方案 最近由于系统的客户越来越多,有客户反映访问速度变慢,尤其是api的请求增长迅速。于是想从IIS入手来一波优化。 IIS高并发配置 一.IIS站点绑定程序池设置 找到Web站点对应绑定的应用程序池,“应用程序池”→“找到对应的应用程序池”→右键“高级设置”。 1.队列长度 默认是1000修改为65535 最大长度。 2.启动32位应用程序:默认值False,改为True,否者安装一些32的组件或32位的php都会出错。 3.托管管道模式:Integrated 或Classic 4.闲置超时(分钟):默认20分钟,改久点。 5.快速故障防护→已启用:默认True,改为False。 6.回收间隔时间 默认每天回收,修改为0 不回收。 7.在“禁止重叠回收”里选择“true”,这样就避免了应用程序池回收假死问题。 二.支持万级并发请求 1.调整IIS7的appConcurrentRequestLimit设置由原来的默认5000改为100000。 [1] 在cmd中执行: 1c:\windows\system32\inetsrv\appcmd.exe set config /section:serverRuntime

【终极解决方案】为应用程序池“XXX”提供服务的进程在与 Windows Process Activation Service 通信时出现严重错误。该进程 ID 为“XXXX”。数据字段包含错误号。

落爺英雄遲暮 提交于 2019-11-28 23:50:59
https://www.cnblogs.com/qidian10/p/6028784.html 症状 日志中大量报错,IIS严重错误,此类错误默认情况下5分钟连续出现5次会导致IIS应用程序池直接挂掉,挂掉之后应用基本上是废掉了,访问量越高,挂的越快! 临时补救该错误的一个方法为,调整应用程序池“服务不可用”响应类型为TcpLevel,这样好歹应用程序池不会挂了,但问题依旧存在。 分析症状 0、搜一下,基本都是这个解决方案http://www.cnblogs.com/freeton/archive/2012/08/28/2660585.html,屁用不中 1、按照直接思维,感觉应该是服务器配置上哪里出了问题,应为本机调试环境下,从来没碰到过这个问题,于是乎更换服务器,winserver08=>winserver2012 r2 无奈问题依旧 2、乖乖分析上述日志错误,在系统日志和w3p日志中均未见该异常的描述。上述事件异常中提示, 异常代码为0xc00000fd ,解释为栈溢出,基本断定为是程序某个位置出了问题,很可能是死循环造成的,但是具体在哪个问题,无从查起 3、了解到还可以通过dmp文件直接跟踪iis崩溃的原因 找到dmp文件 dmp文件是啥?自己百度。简单的说就是黑匣子,记录程序崩溃前的操作,那么如何找到这个黑匣子呢? 1、启动 Windows Error Reporting

.net core 在IIS上发布502问题

一笑奈何 提交于 2019-11-28 18:24:06
本来迁移一个项目到.net core就是一件体力活,要找各种替代包,还有一些函数/属性的不支持 总之很头疼... 不要问我为什么用了.net core还要Host在IIS上,国内用.net的公司普遍都是Windows Server,一时半会儿估计是转换不过来了 至于发布嘛,vs2017上的操作和其他版本的vs发布一样,发布完后文件夹里面文件从数量上就复杂多了 服务器环境:windows server 2008 r2 如果服务器没有外网,还得准备一个C++ 的安装包,官方的链接2015可再发行的版本404了 装一个2010的应该也没问题,目前没试过行不行,自行下载尝试 Microsoft Visual C++ 2010 Redistributable Package (x86) Microsoft Visual C++ 2010 Redistributable Package (x64) Host到IIS必备安装程序:DotNetCore.1.0.4_1.1.1-WindowsHosting.exe 地址: https://go.microsoft.com/fwlink/?linkid=844461 这个安装程序会自动安装一个1.0.4和1.1.1的.net core的Runtime 还有一个IIS的ASP.NET Core Module,提供IIS和Kestrel

高并发下,调整IIS相关的设置,以提高服务器并发量

佐手、 提交于 2019-11-28 18:02:26
1.修改 IIS 队列长度   参考资料: https://docs.microsoft.com/zh-cn/previous-versions/office/communications-server/dd441171%28v%3doffice.13%29   Internet Information Services (IIS) 限制了在任何给定时间可在队列中等待的应用程序池请求的最大数量。如果达到此限制,则所有新请求都将被拒绝,而且用户将收到错误消息“503 – 服务不可用”。默认情况下,IIS 将队列长度设置为 1,000 个请求。该默认值可能太低,因为如果队列长度为 1,000,Communicator Web Access(2007 R2 发行版)将只能处理大约 650 个并发用户,此后将开始拒绝新用户。   为帮助确保 Communicator Web Access 服务的可用性,建议将 IIS 队列长度值设置为预期最多用户数的 1.5 倍。例如,假定您预期在给定时间最多有 2,000 名用户登录到 Communicator Web Access。在此情况下,应将队列长度设置为 3,000(即 2,000 名用户的 1.5 倍)。   在 IIS 7.0 中更改队列长度设置 单击 “开始”,指向 “管理工具”,然后单击 “Internet 信息服务(IIS)管理器”。

iis安置过程中出现503错误及解决方法总结

心已入冬 提交于 2019-11-28 08:01:51
  iiis的安装布置过程中可能会多次出现503错误,这种错误是非常常见的错误,但是也确实非常让人头痛,因为造成这个错误的原因有多重多样,肉眼很难知道是什么原因造成的。 俗话说:知己知彼百战不殆,其实我们可以通过 iis7服务器监控工具 来监控503错误,IIS7服务器监控工具该软件风格简约,操作简单,删除系统缓存,重启服务器,修改服务器账号密码,修复服务器复制功能等,也可以一键开启关闭MYSQL和503错误的监控,省去了繁琐的操作步骤,一键完成。也可以直接修改远程端口范围,省去繁琐步骤。 知道了为什么出现503错误才能更好地解决问题,下面为大家介绍及个常见的错误出现原因及解决办法。 方法如下:   1、503是一种HTTP状态码,是服务器出错的一种返回状态,由于临时的服务器维护或者过载,服务器当前无法处理请求。这个状况是临时的,并且将在一段时间以后恢复。服务器返回503主要通过一下方法解决:   2、首先要检查你是否关闭了应用程序池。每个网站都对应了一个应用程序池(IIS服务器是如此),当然他们可能是相同的应用程序池,也能是不同的,查看出现503错误网站对应的程序池是否开启。   3、如果没有关闭应用程序池,那就要看看是否请求到达时应用程序池队列已满。每个网站都有其最大的负载量,当访问请求达到这个值的时候就会出现503错误,解决办法可以加大请求队列,默认值为1000。   4

监控到503错误下的如下解决办法

北城以北 提交于 2019-11-28 03:40:18
自助域名解析时,返回错误值:主机服务器商检测:http 80端口检测:网站访问异常,HTTP状态码:503然后查看HTTP状态码,显示503是服务不可用。 使用 iis7服务器监控工具 开启503错误监控之后,服务器状态显示正常,然后所有端口都开放了在还是显示503, 有很多关于这方面的帖子,我已经尝试过很多事情了。但没有结果。几天开始着手开发这个Web项目。 我有一个ASP.NET项目,我想把它托管在本地IIS上。在Project properties -> Web我选择的设置Use Local IIS Server给了我一个网址localhost/MyApp。我尝试在我的Firefox浏览器上访问它,并收到了错误消息HTTP Error 503. The service is unavailable. 以前我有很多其他的错误,我一个一个地修正了它们。但被这个击中了。这些是我在项目中的设置。 将应用程序池设置为ASP.NETV4.0经典 APP池Enable 32 bit Application财产为真 启动APP池 项目生成属性设置为Any CPU目标框架 但我想提一下一种奇怪的行为。以下是我面临的问题 启动应用程序池 我试图访问我的本地网站(通过提供url作为localhost/MyApp) 我收到的错误是HTTP Error 503. The service is

ArcGIS Server访问量过大时,lsass.exe进程占用CPU内存过高。

て烟熏妆下的殇ゞ 提交于 2019-11-28 01:57:41
问题描述: 当 ArcGISServer .NET 应用程序和 IIS 服务访问量过大时(每秒超过 25 个并发请求), LocalSecurity Authority Subsystem Service (lsass.exe) 系统进程就会变得负担过重 . 这个能造成系统性能下降,在极端的情况下,在如此大的负载情况下系统运行超过 12 个小时,服务器会死机。 原因: ArcGISServer .NET Web 应用程序和服务必须运行在 AGSUSERS 或 AGSADMIN 工作组下。通常的情况下,创建应用程序或者服务是通过 ArcGIS Server 的 Web 应用程序或者 Catalog 完成,它们是被当作一个 aspnet 进程处理的。 ArcGISServer 组件处理 Internet 服务请求,例如: http://myArcGISServer/arcgis/services 或者 http://myArcGISServer/arcgis/rest ,或者自己的 Web 服务,使用过 ArcGIS Web Services 账户运行的。 每当一个 Web 应用程序或者 Web 服务处理一个请求的时候,在 ASP.NET 工作进程下必须通过 lsass.exe 去认证。在正常负责条件下,这些认证操作是没有问题的。但是当访问量过大的时候