IIS7启动优化

最近基于abp作的项目在发布到IIS后,第一次被访问异常缓慢,若是时间间隔久再去访问如第一次访问通常缓慢,为了解决这个问题对项目进行了一下系列操做:css

一、优化js、css插件,插件分批加载,充分利用浏览器缓存机制html

二、清理部分不须要的插件web

三、对EF进行预热(基于仓储Repository貌似无效)浏览器

四、IIS预加载优化缓存


1、EF预加热,在Global的Application_Start方法添加如下代码。详细参考服务器

            #region EF预加热
            using (var dbcontext = new EntityFramework.EmProjectDbContext())
            {
                var objectContext = ((IObjectContextAdapter)dbcontext).ObjectContext;
                var mappingCollection = (StorageMappingItemCollection)objectContext.MetadataWorkspace.GetItemCollection(DataSpace.CSSpace);
                mappingCollection.GenerateViews(new List<EdmSchemaError>());
            }
            #endregion

2、IIS预加载优化app

  对于IIS8来讲,预加载已作了支持,详细配置参考 、参考二post

不过也提供对IIS7.5的预加载支持,须要下载两个包:appwarmup_x64.msi、ApplicationInitialization for UI优化

appwarmup_x64.msi的下载地址:https://www.iis.net/downloads/microsoft/application-initializationui

ApplicationInitialization for UI下载地址:http://download.csdn.net/download/a66081638/9732676 (须要积分) 、不要积分

1)先安装appwarmup_x64.msi,而后重启服务器

2)再安装ApplicationInitialization for UI

3、IIS配置

一、安装完毕后,能够在iis配置管理页的‘其余’项中有一个‘Application Initialization’

二、双击该图标,进入配置页

1)配置程序池

2)配置站点

 3)应用程序池设置中的Idle Time-out设为0

 

一些参考:

https://www.cnblogs.com/webenh/p/6400558.html

http://www.codeweblog.com/entity-framework-6-%E9%A2%84%E7%83%AD-%E5%90%AF%E5%8A%A8%E4%BC%98%E5%8C%96/

相关文章
相关标签/搜索