书刊介绍
《微软互联网信息服务(IIS)最佳实践》内容简介
本书系统论述了微软互联网信息服务(IIS)的基本架构、安装方法、部署方式、配置调优和常见问题排查,由浅入深地介绍了IIS的部署、运维和排错知识。本书全面详尽地论述了IIS安装、部署、运维和排错的全方位技术,包括IIS的架构、规划Web网站部署、安装IIS服务、部署Web站点应用、操作系统优化、站点配置和优化、日常运维、基本问题排错、ASP.NET Web应用排错和Azure上的Web应用等。本书内容覆盖面广,结合很多实际案例、注重理论和实际问题排查经验的配合,非常适合于使用IIS运维Web网站的IT人员,也适合于从Apache和Nginx等Web容器平台转向IIS平台的读者。对于有IIS运营维护经验的读者,也极具参考价值。
李争,微软(中国)有限公司开发者体验与平台合作部门担任技术顾问。专注于微软公有云平台Azure的解决方案和架构设计、Azure应用的实施,以及Azure上的开源技术等工作。曾在微软企业服务部作为原厂技术支持工程师工作多年,承担企业开发者代码调试和技术支持、Web应用前端后端代码调优,以及IIS的问题诊断、调优、培训等工作。具有丰富的企业客户临场解决严重系统问题的经验。拥有四十多门微软认证证书,涵盖了几乎全部微软开发相关技术,同时也是一位具有十多年丰富授课经验的微软认证讲师(MCT)。作品目录
内容简介
丛书序
FOREWORD
四十不惑创新不止
推荐序
FOREWORD
前言
PREFACE
第1章:IIS的架构介绍
1.1、IIS的前世今生
1.1.1、IIS的历史
1.1.2、IIS各个版本的重要演进
1.2、初识IIS
1.2.1、IIS应用程序文件夹
1.2.2、IIS
Web内容文件夹
1.2.3、IIS相关的Windows服务
1.3、关键进程InetInfo.exe和w3wp.exe
1.4、IIS架构探秘
1.4.1、IIS的内核层实现
1.4.2、IIS的应用层实现
1.4.3、一个HTTP请求在IIS上处理的完整流程
1.4.4、一个ASP.NET页面请求的处理
第2章:规划Web服务器部署
2.1、部署Web应用需要考虑的几个问题
2.1.1、账号类型
2.1.2、Web站点状态数据的存储方式
2.1.3、保证配置和网站内容一致的方法
2.2、几种常见的部署模型
2.2.1、负载平衡器和Web服务器方式
2.2.2、负载平衡加Web服务器和DFS服务器方式
2.2.3、负载平衡加Web服务器和集中存储方式
2.3、Azure公有云上的几种部署模型
2.3.1、Web应用加数据库模型
2.3.2、Cloud
Service加虚拟网络模型
2.3.3、虚拟网络部署虚拟机模型
第3章:安装IIS服务
3.1、IIS安装步骤
3.1.1、使用服务器管理器安装IIS服务
3.1.2、使用命令行方式进行IIS安装
3.2、IIS组件列表以及对应的功能
3.2.1、FTP服务器、FTP服务和FTP扩展性
3.2.2、Web管理工具中的IIS
6.0管理兼容性
3.2.3、Web管理工具中的管理服务、管理脚本和工具及管理控制台
3.2.4、安全性
3.2.5、常见HTTP功能
3.2.6、性能
3.2.7、应用程序开发
3.2.8、健康和诊断
3.2.9、管理工具
3.2.10、IIS
6.0管理兼容性
3.2.11、IIS可承载Web核心
3.3、推荐安装的IIS组件列表
第4章:部署Web站点
4.1、使用Web
Deploy工具部署Web网站
4.2、使用Visual
Studio
Online为Azure
Web应用部署Web网站
4.3、使用Git为Azure应用部署Web网站
4.3.1、在Web应用上创建本地Git存储库
4.3.2、把Web网站内容提交到Git存储库
4.4、在云服务上的Web网站部署
第5章:安装IIS之后操作系统的优化
5.1、设置虚拟内存文件pagefile.sys
5.2、设置致命故障恢复配置
5.3、关闭不必要的服务
5.4、设置适当的Windows事件日志大小
5.5、设置定期整理磁盘
5.6、关闭Windows自动更新
第6章:IIS站点配置介绍和调优
6.1、Web站点配置介绍
6.1.1、设定默认文档
6.1.2、目录浏览
6.1.3、设置压缩
6.1.4、设定日志
6.1.5、在网络负载平衡环境下设置MachineKey
6.2、IIS应用程序池概述
6.3、应用程序池配置介绍
6.3.1、常规
6.3.2、CPU
6.3.3、回收
6.3.4、进程孤立
6.3.5、进程模型
6.3.6、快速故障防护
6.4、推荐的应用程序池配置
6.5、.NET进程模型调优
6.5.1、在配置文件中禁用Debug模式
6.5.2、在配置文件中设置进程模型元素
第7章:IIS日常运维
7.1、日常运维工具
7.2、定时检查Web站点的连通性
7.3、定期收集审查Windows日志
7.3.1、Windows应用程序日志提取的主要步骤
7.3.2、Windows应用程序日志的分析步骤
7.4、定期收集和审查HTTP错误日志
7.5、定期收集和分析IIS日志
7.5.1、IIS日志的收集
7.5.2、IIS日志的分析
7.5.3、有用的查询
7.6、使用Azure
HDInsight大数据工具分析IIS日志
7.6.1、创建HDInsight服务账号
7.6.2、使用Azcopy上传IIS日志文件
7.6.3、使用Hive对IIS日志数据进行查询分析
7.6.4、使用Excel导出IIS日志分析结果
7.7、养成定期整理磁盘碎片的好习惯
7.8、定期安装Windows补丁更新
7.8.1、常规安全检查
7.8.2、离线扫描补丁缺失
第8章:IIS基本问题排错
8.1、IIS排错常备工具介绍
8.1.1、性能监视器
8.1.2、性能分析工具PAL
8.1.3、HTTP调试工具Fiddler
8.1.4、失败请求跟踪
8.1.5、Dump抓取工具
8.2、用性能监视器监控Web服务器性能
8.2.1、导出IIS计数器模板
8.2.2、计数器模板导入并记录数据
8.2.3、性能数据的实时查看
8.2.4、调整实时计数器的显示
8.3、一些关键计数器指标
8.3.1、CPU占用率
8.3.2、内存相关指标
8.3.3、磁盘相关指标
8.4、使用性能分析工具PAL分析性能数据
8.5、使用Fiddler调试HTTP通信
8.5.1、使用Fiddler调试浏览器通信
8.5.2、使用Fiddler调试UWP应用通信
8.6、失败请求追踪
8.7、Dump抓取工具
8.7.1、任务管理器
8.7.2、DebugDiag
8.7.3、ADPlus
8.7.4、ProcDump
8.7.5、抓取Dump工具使用比较
第9章:ASP.NET
Web应用程序排错
9.1、环境准备
9.1.1、BuggyBits网站
9.1.2、安装Debugging
Tools
for
Windows
9.1.3、设置符号表路径
9.2、调试分析
9.2.1、访问Featured
Products时间过长
9.2.2、访问AllProducts.aspx页面缓慢
9.2.3、ProductInfo.aspx页内存泄漏
9.2.4、Review.aspx页面导致IIS停止服务
9.2.5、News.aspx页面内存泄漏
9.2.6、CompanyInformation.aspx页面发送消息崩溃
9.2.7、Links.aspx页面内存泄漏
第10章:Azure上的Web
App
10.1、Azure
Web应用的配置介绍
10.1.1、Web应用的IIS相关配置
10.1.2、Web应用的缩放配置
10.1.3、Web应用的备份配置
10.2、实现持续部署
10.2.1、创建部署槽
10.2.2、部署槽的切换
10.3、高级调试
10.3.1、访问Kudu
10.3.2、抓取内存Dump