当前位置 主页 > iis相关 >

    iis8中Web进入休眠状态如何处理?

    栏目:iis相关 时间:2018-09-28 13:26

      问题:Web超过20分钟(默认时间)没有访问,无活动,Web进入休眠状态
     
      详情:在Web系统中长时间持续、定时执行任务,如当前的RFID系统中的报文解析服务。Web系统部署在运行环境后,超过默认时间无访问,Web系统会自动休眠,导致指定任务无法继续执行。
     
      测试运行环境:
     
      win8系统x64专业版
     
      IIS8.0
     
      SQLServer2008R2X64
     
      Web基本信息:
     
      .NETMVC5
     
      EntityFramework.6.1.3
     
      解决方案:
     
      1、使用计划任务
     
      2、使用Widows服务
     
      3、使用IIS8.0的功能ApplicationInitialization
     
      本次使用解决方案第三点
     
      步骤:
     
      1、为IIS添加ApplicationInitialization的功能模块
     
      2、找到目录C:\Windows\System32\inetsrv\config打开applicationHost.config配置文件
     
      (1)查找system.applicationHost/applicationPools/name=".NETv4.5"的Add节点
     
      (2)添加属性startMode="AlwaysRunning"
     
      示例:<addname=".NETv4.5"startMode="AlwaysRunning"managedRuntimeVersion="v4.0"/>
     
      (3)查找system.applicationHost/sites/部署项目的site/application
     
      (4)添加属性preloadEnabled="true"
     
      示例:<applicationpath="/"preloadEnabled="true"applicationPool=".NETv4.5">
     
      3、打开Web项目的web.config文件
     
      (1)找到节点system.webServer
     
      (2)添加或修改配置信息
     
      <applicationInitializationremapManagedRequestsTo="Startup.htm"skipManagedModules="true">
     
      <addinitializationPage="/default.aspx"/>
     
      </applicationInitialization>
     
      示例:
     
      <system.webServer>
     
      <security>
     
      <requestFiltering>
     
      <requestLimitsmaxQueryString="4080"></requestLimits>
     
      </requestFiltering>
     
      </security>
     
      <modulesrunAllManagedModulesForAllRequests="true">
     
      <removename="FormsAuthentication"/>
     
      </modules>
     
      <urlCompressiondoDynamicCompression="false"/>
     
      <applicationInitialization
     
      remapManagedRequestsTo="Startup.htm"
     
      skipManagedModules="true">
     
      <addinitializationPage="/default.aspx"/>
     
      </applicationInitialization>
     
      </system.webServer>
     
      4、结束,重启IIS
     
      netstopw3svc&netstartw3svc