热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

IIS性能设置

可以通过调整Internet信息服务(IIS)配置数据库属性和注册表项来调整Web服务器的性能。提高或降低设置值常常可以缓解瓶颈和改善性能,但对配置数据库或注册表的更改也可能会在服

可以通过调整 Internet 信息服务 (IIS) 配置数据库属性和注册表项来调整 Web 服务器的性能提高或降低设置值常常可以缓解瓶颈和改善性能,但对配置数据库或注册表的更改也可能会在服务器环境的其他部分产生瓶颈。在对服务器环境进行更改之前或之后都要对性能进行监视,以确定更改是否有益。

本主题将描述适合于 Web 服务器性能的配置数据库注册表设置的建议值。

 要点 使用注册表编辑器不当可能导致需要重新安装操作系统的严重问题。因为注册表编辑器会跳过标准安全保护(禁止您输入存在冲突或者有可能降低性能或损坏系统的设置),所以在更改注册表时一定要格外小心。Microsoft 不能保证解决由于错误使用注册表编辑器而出现的问题。有关如何编辑注册表的信息,请参阅注册表编辑器帮助中的更改项和值主题。

对于性能问题,在对注册表进行更改之前,请先尝试更改配置数据库和缓存的设置。要对 Windows 和 IIS 进行配置或自定义,只要有可能,请使用控制面板或 Microsoft 管理控制台 (MMC) 中的程序。

配置数据库的设置

下表列出了对于调整 Web 服务器最重要的配置数据库属性。有关配置数据库属性的默认值的信息,请单击相应的链接。可以通过使用 Windows Management Instrumentation (WMI) 或通过使用文本编辑器直接对配置数据库进行编辑来检索和更改这些属性。对这些属性中大多数属性的更改在重新启动万维网发布服务(WWW 服务)之前不会生效。

配置数据库属性 描述
AppAllowDebugging 指定在服务器上是否启用 Active Server Page (ASP) 调试。在启用此属性的情况下,IIS 应用程序线程是序列化的;对于每个应用程序,一次只允许执行一个线程。序列化线程会对 Web 服务器性能产生负面影响。建议您在所有产品服务器上将此属性设置为 false
AspBufferingOn 允许将应用程序的所有输出收集在 ASP 输出缓冲区中,然后再将缓冲的信息刷新到客户端浏览器(默认行为)。如果将此属性设置为 false,那么在客户端浏览器可用时 ASP 脚本的输出将被写入到客户端浏览器。建议您在所有产品服务器上将此属性设置为 true
AspQueueConnectionTestTime 确保 IIS 不将时间浪费在处理用户已放弃的请求上。此设置会显著地改善 Web 应用程序的性能。如果某一请求在队列中的时间长于队列连接测试时间,那么服务器将在开始执行之前检查客户端是否仍处于连接状态。

此功能用于处理急躁的用户用在同一页面上的很多请求尝试填满请求队列的问题。应将该值设置得小一些,例如,三秒钟。是否更改此值要依据服务器运行的 Web 应用程序的类型来决定。长时间运行的 ASP 页面也可以使用 Response.IsClientConnected 方法检查客户端是否仍在等待页面的其余部分。长时间运行的页面应使用 Response.Flush 确保用户觉察到页面仍在连接中并且在进行高效的处理。

AspRequestQueueMax 指定允许进入队列的并发 ASP 请求的最大数量。此设置的效果取决于应用程序的行为。如果请求的执行时间非常短,且在队列中的时间非常短,那么提高默认值的限度是合理的。
AspScriptEngineCacheMax 指定 ASP 页缓存在内存中的脚本引擎的最大数量。根据应用程序中的内容的类型调整默认值。(默认值不包括当前正在运行的脚本引擎)如果有成千上万的不同页,您会体验到提高缓存大小的一些好处:大多数频繁请求的页都可以轻松地访问到。脚本引擎缓存的好处意味着您可以无需将模板重新编译为字节代码。
AspScriptFileCacheSize 指定存储在 ASP 模板缓存中的预编译脚本文件的数量。如果设置为 0,则不缓存任何脚本文件。如果设置为 -1,则缓存所有被请求的脚本文件。如果您有许多不同的 ASP 页,则可以增大默认值。不要将此属性的值设置为 0。如果值为 0,则会关闭所有 ASP 缓存,会严重影响服务器的性能。
AspSessionMaxAspSessionTimeout AspSessionMax:指定 IIS 允许的并发会话的最大数量。

AspSessionTimeout:指定在发出与对象关联的最后一个请求之后会话对象保持的默认时间长短(以分钟为单位)。

对于利用会话的应用程序,缩短会话超时时间以减少服务器所需要的开销可能是明智的做法。然而,如果并发会话的比例很大,则可能有必要使用最大的会话超时值。

AspProcessorThreadMax 指定 IIS 为每个处理器创建的工作线程的最大数量。

IIS 所允许的每个 ASP 进程的工作线程的最大数量是 AspProcessorThreadMax 乘以服务器上处理器的数量。可以降低此值然后监视性能。如果性能降低,请恢复 AspProcessorThreadMax 原来的值。

AspTrackThreadingModel 指定 IIS 是否检查应用程序实例化的所有组件的线程模型。不建议您启用此属性。如果将此配置数据库属性设置为 false,即可避免 ASP 线程模型跟踪所产生的开销,并且您可能会看到 ASP 应用程序的性能改善。然而,如果将此属性设置为 true,您计划给予应用程序作用域的所有组件都必须是灵活的;换句话说,要么被标记为双线程的,并聚集***线程的封送器,要么被标记为 ThreadingModel=Neutral。

如果应用程序作用域内的组件不是灵活的,那么当您尝试实例化组件时 ASP 就会产生错误。此外,如果此属性为 false,那么缺乏 OnStartPageOnEndPage 方法并在 ASP 应用程序中被实例化的所有对象都比它们在相反的情况下更早地释放。这样就应能够改善应用程序的可扩展性。

CacheISAPI 指出 Internet 服务器 API (ISAPI) 扩展在使用之后是否在内存中缓存。如果此属性的值是 true,那么 DLL 文件在服务器停止之前会保留在缓存中。如果该值是 false,那么在扩展 DLL 不再使用之后将从内存中卸载 ISAPI 扩展。ISAPI 扩展是缓存还是不缓存,取决于在它们加载到内存供使用时此属性的值。因此,如果此属性在扩展被加载并缓存之后被更改,那么更改不会影响该扩展。

将此属性设置为 false 对于调试很有帮助,但建议您在所有产品 Web 服务器上将此值设置为 true。为每个请求重新加载 ISAPI 扩展 DLL 文件会降低性能。ASP.dll 本身就是一个 ISAPI 扩展,因此禁用此属性也会降低 ASP 性能。

注册表设置

此部分列出了在调整 Web 服务器时应考虑的注册表项。每个列出的注册表项都包括驻留相同位置的设置的注册表路径,并包括名称、范围、默认值和每个设置的作用的描述。需要重新启动 IIS 才能使新的 WWW 服务设置生效。

DisableMemoryCache
注册表路径HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters
数据类型REG_DWORD
默认值:0(已禁用)
范围:0 - 1
DisableMemoryCache 禁用服务器缓存。要确保在所有产品服务器上将此参数设置为 0。如果将此参数设置为 1,那么就会禁用静态文件缓存。尽管禁用缓存可能会对调试有用,但这样做会严重降低产品服务器的性能。此参数无法使用 IIS 管理器进行配置。
MaxCachedFileSize
注册表路径HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet?\Services\InetInfo\Parameters
数据类型REG_DWORD
默认值:256 KB (262,144 bytes)
MaxCachedFileSize 确定可以放在缓存中的文件的最大大小。IIS 不缓存大于 MaxCachedFileSize 字节的文件。如果您正在运行专用的大型 Web 服务器,您可能需要将此值添加到注册表中,以提高缓存中可以保存的文件大小。
MemCacheSize
注册表路径HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet?\Services\InetInfo\Parameters
数据类型REG_DWORD
默认值:大约为可用物理内存的一半,以兆字节为单位
范围:0 - 2500MB
MemCacheSize 指定 IIS 用来作为其文件缓存的内存的最大量。如果 IIS 不需要这么多内存,可以留给其他应用程序使用。如果注册表中没有此值,IIS 用作缓存的量不超过 Web 服务器上可用内存的一半(是每隔 60 秒动态地计算出来的)。如果您正在运行专用的大型 Web 服务器,您可能需要将此值添加到注册表中,以提高 IIS 可以使用的内存量。当您将此对象添加到注册表时,必须以兆字节为单位指定此大小。
ObjectCacheTTL
注册表路径HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet?\Services\InetInfo\Parameters
数据类型REG_DWORD
默认值:30(秒)
范围:0 - 4,294,967,295(无限制)
ObjectCacheTTL 控制静态文件缓存的生存时间 (TTL) 设置,该设置定义对象(包括文件)存放在缓存中的时间长短。如果内存缓存中的对象在所定义的时段内未被引用,则该对象将被清除出缓存。默认情况下,此值未包括在注册表中。如果您希望更改此默认值,则必须手动添加。如果系统内存有限,或者服务器内容是动态的,您可以使用一个较低的 TTL 来防止系统内存被用于缓存大量动态的对象。将值设置为 0xFFFFFFFF 将禁用对象缓存清理程序并允许缓存对象保留在缓存中,直到它们被覆盖为止。如果服务器有足够的系统内存而且数据是相对稳定的,则禁用缓存清理程序将很有用。其他站点可以选择折衷,将此值提高到几分钟。
PoolThreadLimit
注册表路径HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet?\Services\InetInfo\Parameters
数据类型REG_DWORD
默认值:2 * # MB
范围:0 - 4,294,967,295(无限制)
PoolThreadLimit 指定可以在 Inetinfo.exe 进程中创建的 I/O 工作线程的最大数量,该设置将限制同时连接的数量。IIS 将 PoolThreadLimit 设置为计算机中当前 RAM 的兆字节数量的两倍。如果此值大于 256,则使用 256。如果注册表中已经有该值,那么它就会覆盖 IIS 的计算值。每个池线程都监视网络请求并对其进行处理,处理方法是,发回静态文件或者将该请求传递到 ISAPI 扩展 DLL(如 ASP)或传递到通用网关接口 (CGI)。如果 ISAPI 扩展同步对请求进行处理,它将需要花很长时间来处理请求,而且会占用工作线程,这样 IIS 处理其他请求的工作线程数会变少。因此,高质量编码的 ISAPI 扩展(如 ASP)实现它们自己的线程池,将请求放在队列中,并使用其自己的线程异步对请求进行处理,这样就不会占用 IIS 工作线程了。一般来说,如果您发现默认限度 256 个线程不够,那么 ISAPI 扩展的编码质量可能较差,占用了 IIS 工作线程。

PoolThreadLimit 是包括所有 IIS 工作线程(包括 HTTP、FTP、NNTP 和 SMTP 服务)的硬性限制。PoolThreadLimit 总是大于或等于 MaxPoolThreads

ASP 线程池是单独的一组线程。其大小受 AspProcessorThreadMax 配置数据库设置的控制。未处理的 ASP 请求的最大数量是 AspRequestQueueMaxAspProcessorThreadMax 的总和。

PoolThreadLimit 是包含所有 IIS 线程的硬性限制,它始终大于或等于 MaxPoolThreads

MaxPoolThreads
注册表路径HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet?\Services\InetInfo\Parameters
数据类型REG_DWORD
默认值:4
范围:0 - 4,294,967,295(无限制)
MaxPoolThreads 指定为每个处理器创建的 I/O 工作线程的数量。每个池线程都监视网络请求并对其进行处理。MaxPoolThreads 计数不包括 ISAPI 应用程序使用的线程;它只表示可用于处理静态文件请求的工作线程数量。IIS 将按需要创建更多线程,以处理 ISAPI 请求。IIS 工作线程的总数不得大于 PoolThreadLimit

默认情况下,只能同时运行四个 CGI 应用程序。如果运行多个 CGI 应用程序,应该增加该值以提高吞吐率。可以将 UsePoolThreadForCGI 的值(在 ..\Services\W3SVC\Parameters 下)设置为 false(或 0),但这有点危险,因为在大量使用 CGI 应用程序时性能会明显降低。通常,每个处理器最好不要创建超过 20 个线程。

ListenBackLog
注册表路径HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet?\Services\InetInfo\Parameters
数据类型REG_DWORD
默认值:15
范围:1 - 250

ListenBackLog 指定在队列中允许的等待服务器处理的活动连接的最大数量。通常没有必要使用或修改此项,虽然在频繁使用的情况下将此值最多提高到 300 会非常有益。

 

--------------------------------------

 

在 Microsoft Windows Server 2003 中,Http.sys 是处理 HTTP 请求的内核模式驱动程序。根据特定要求,可以配置多个注册表值。“更多信息”部分中的表包含有关这些注册表值的以下信息: • 注册表项名称
• 默认值
• 有效值范围
• 注册表项功能
• 警告代码(如果适用)
注意:有关使用非默认设置创建和配置注册表值的潜在风险的信息,请参见“警告代码”部分。 本文的目标读者是高级用户,并假定他们了解注册表和更改注册表的风险。
回到顶端

更多信息
重要说明:此部分、方法或任务包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756 (http://support.microsoft.com/kb/322756/) 如何在 Windows 中备份和还原注册表
在以下注册表项下,可以创建下列 DWORD 值:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
注册表项 默认值 有效值的范围 注册表项功能 警告代码
AllowRestrictedChars 0 布尔型 如果不为零,则 Http.sys 接受请求 URL 中解码为 U+0000 – U+001F 和 U+007F – U+009F 范围的十六进制转义字符。 0
EnableAggressiveMemoryUsage 0 0,1 预分配非分页缓冲池内存。默认情况下,如果可用的非分页缓冲池内存不足 20MB,HTTP 服务将停止接受连接。在将此值添加到注册表中后,HTTP 服务将在可用非分页缓冲池内存不足 8MB 时停止接受连接。设置此注册表值可减少 Httperr.log 文件中的“Connections_refused”和 503 错误数。 0
EnableNonUTF8 1 布尔型 如果为零,则 Http.sys 仅接受 UTF-8 编码的 URL。如果不为零,Http.sys 也接受所请求 ANSI 或 DBCS 编码的 URL。 0
FavorUTF8 1 布尔型 如果不为零,Http.sys 总是先尝试将 URL 作为 UTF-8 解码;如果转换失败并且 EnableNonUTF8 不为零,则 Http.sys 尝试将其作为 ANSI 或 DBCS 解码。如果为零(并且 EnableNonUTF8 不为零),则 Http.sys 尝试将其作为 ANSI 或 DBCS 解码;如果失败,则它会尝试 UTF-8 转换。 0
MaxBytesPerSend 65536 1-0xFFFFF(字节) 替代 Http.sys 使用的 TCP 窗口大小。在具有较大带宽和较高延迟的网络环境中,此值越大,下载速度就越快。 0
MaxConnections MAX_ULONG 1024 (1K) – 2031616 (2MB) 连接 替代驱动程序中的 MaxConnections 计算。这主要是一种内存功能。 1
MaxEndpoints 0 0 - 1024  所允许的当前终结点对象的最大数目。默认值零表示最大数目是基于可用内存计算得出的 1
MaxFieldLength 16384 64 - 65534 (64K - 2) 字节 设置每个标头的上限。请参见 MaxRequestBytes。它会将每个 URL 的最大字符数限制在大约 32K 左右。 1
MaxRequestBytes 16384 256 - 16777216 (16MB) 字节 确定请求行和标头的总大小的上限。默认设置是 16KB。 如果此值小于 MaxFieldLength,则调整 MaxFieldLength 值。  1
PercentUAllowed 1 布尔型 如果不为零,则 Http.sys 接受请求 URL 中的 %uNNNN 符号。 0
UrlSegmentMaxCount 255 0 - 16,383 段  URL 路径段的最大数目。如果为零,则计数受 ULONG 最大值的限制。 1
UriEnableCache 1 布尔型 如果不为零,则启用 Http.sys 响应和片段高速缓存。 0
UriMaxUriBytes 262144(字节) 4096 (4K) – 16777216 (16MB) 字节  大于此值的任何响应都不会缓存在内核响应高速缓存中。 1 3
UriScavengerPeriod 120(秒) 10 - 0xFFFFFFFF 秒 确定高速缓存 scavenger 的频率。任何在 UriScavengerPeriod 定义的秒数内未被访问的响应或片段均会被刷新。 1 2
UrlSegmentMaxLength  260 0 - 32,766 字符  URL 路径段(URL 中斜杠之间的部分)中的最大字符数。如果为零,则其长度受 ULONG 最大值的限制。 1
当 Microsoft Internet Information Services (IIS) 6.0 上托管的 Internet 服务器 API (ISAPI) 应用程序或通用网关接口 (CGI) 应用程序发送响应时,可能会出现 IIS 6.0 性能下降的问题。遇到此问题时,可以将 MaxBufferedSendBytes DWORD 值添加到注册表中。 有关此问题的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
906977 (http://support.microsoft.com/kb/906977/) BUG:当 Internet Information Services 6.0 上托管的 ISAPI 应用程序和 CGI 应用程序发送响应时出现性能下降的问题
在 Microsoft Windows XP 和 Microsoft Windows Server 2003 中,还可以在以下注册表项下创建下面的 DWORD 值:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
注册表项 默认值 有效值的范围 注册表项功能 警告代码
CertChainCacheOnlyUrlRetrieval 1 0,1 默认情况下,如果将 IIS 配置为使用客户端证书,将不会在链验证期间遵循 AIA 提示。此行为是为保证性能和安全而设计的。例如,此行为有助于防止 DoS 攻击。但是,在需要检索 AIA 时,此行为还可能导致证书被意外拒绝。 要替代此行为,可以在“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters”注册表项下将 DWORD 参数 CertChainCacheOnlyUrlRetrieval 设置为 0(零)。 不适用

回到顶端

警告代码
• 0:无风险。
• 1:更改此注册表项被认为是极其危险的。此项会导致 Http.sys 占用更多内存,并且还可能增加易受恶意攻击的漏洞。
• 2:此值越低,高速缓存的刷新频率就可能越高。如果发生此行为,可能会影响性能。
• 3:低值可能影响静态内容的性能。
只有重新启动 HTTP 服务,对注册表所做的更改才会生效。此外,可能还需要重新启动所有相关的 IIS 服务。 要重新启动 HTTP 服务、类型和所有相关的 IIS 服务,请按照下列步骤操作: 1. 依次单击“开始”、“运行”,键入 Cmd,然后单击“确定”。
2. 在命令提示符处,键入 net stop http,然后按 Enter。
3. 在命令提示符处,键入 net start http,然后按 Enter。
4. 在命令提示符处,键入 net stop iisadmin /y,然后按 Enter。 注意:所有依赖 IIS Admin Service 服务的 IIS 服务也将停止。请记下在停止 IIS Admin Service 服务时停止的 IIS 服务。在下一步中,将需要重新启动其中的每项服务。
5. 重新启动在步骤 4 中停止的 IIS 服务。为此,请在命令提示符处键入 net start servicename,然后按 Enter。在该命令中,servicename 是要重新启动的服务的名称。例如,要重新启动 World Wide Web Publishing Service 服务,请键入 net start "World Wide Web Publishing Service",然后按 Enter。
------------------------
Configuration setting  默认值(.net Framework 1.1)  推荐值
----------------------------------------------------------------------------------
maxconnection   2     12 * #CPUs 
maxIoThreads   20     100 
maxWorkerThreads  20     100 
minWorkerThreads       50 
minFreeThreads   8     88 * #CPUs 
minLocalRequestFreeThreads 4     76 * #CPUs 
appRequestQueueLimit       1000

-----------------------

  管理互联网信息服务器(Internet Information Server,IIS)大家都知道,它是一个既简单而又麻烦的东西,简单的是安装它几乎不需要费什么脑筋,选择一下路径,然后一路按“下一步”就可以完成;配置也比较简单,只要有一定的NT和网络知识,照着说明书就可以架设一个像模像样的Web站点出来。然而管理IIS却没有想像的那样简单。使用一段时间以后,管理员往往会遇上服务器性能不良的情况。这时候,IIS的性能优化,就尤为重要了。 

  导致IIS服务性能不良的原因有两个方面。一个是人为的,也就是说管理员在安装、配置IIS的时候没有进行优化或者配置错误。另一个则是客观上的,随着运行的服务种类,以及访问人数的增加,服务器原有的硬件配置已不能满足要求了,这就需要提高硬件配置。 

  在服务器配置上优化IIS性能 

  1.IIS高速缓存是对IIS进行优化时要考虑的最重要的项目之一。服务器保留了一部分内存空间用作IIS高速缓存,为将来的请求存储对象,这样IIS就可从高速缓存中检索对象而不用从硬盘中检索。 

  调整IIS高速缓存的容量需要修改注册表,表项如下: 

  \HKEY_LOCAL_MACHINE 
  \System 
  \CurrentControlSet 
  \Services 
  \InetInfo 
  \Parameters 
  \MemoryCacheSize 
  MemoryCacheSize的范围是从0道4GB,缺省值为3072000(3MB)。 

  IIS通过高速缓存系统句柄、目录列表以及其他常用数据的值来提高系统的性能。这个参数指明了分配给高速缓存的内存大小。如果该值为0,那就意味着“不进行任何高速缓存”。在这种情况下系统的性能可能会降低。如果你的服务器网络通讯繁忙,并且有足够的内存空间,可以考虑增大该值。必须注意的是修改注册表后,需要重新启动才能使新值生效。 

  2.使IIS使用处理器时间最长。服务器的CPU处理器能力总是有限的。哪一个应用程序占用处理器的时间最长,谁的性能就能得到最大的提高。 

  (1)在NT的控制面板中,双击系统图标。 
  (2)单击性能标签。 
  (3)在应用程序性能下将游标拖到None的位置,这样就可以使所有正在运行的服务,包括IIS,使用处理器的时间达到最大值。 

  3.服务器属性设置。在服务器属性里有一项可以使网络应用程序的总处理能力最大的选项,你当然应该选择它。 

  (1)在桌面上右键单击网络邻居图标,然后选择属性选项。 
  (2)单击“服务标签”。 
  (3)单击“服务器”,然后按“属性”。 
  (4)选择最大化网络应用程序的总处理能力。然后单击“OK。” 

  提高硬件配置来优化IIS性能 

  当进行了上述的优化配置,IIS的性能仍然没有什么明显改善的话,也许你应该考虑提高服务器配置了。如升级处理器,增加硬盘,升级网卡,增加内存等。 

  优化IIS的注意事项 

  为了避免以后的头疼,在安装IIS之时就应该注意到IIS的优化。比如: 

  1.为了提高性能和节约资源,应该只运行需要的协议。这一点很多管理员都没有注意,笔者曾见到在一台只作Web服务的机器上同时安装有NetBEUI、Tcp/IP和IPX协议。显然这是不合理的。 

  2.应该将IIS服务器,设置为独立的服务器,不要让服务器去承受域控制器要求的额外负荷。试想:服务器一边在响应用户的登录,一边还要提供IIS服务,性能能不下降吗? 

  3.可以把NT服务器的页交换文件分布到多个物理磁盘上,注意是多个“物理磁盘”,分布在多个分区上是无效的。另外,不要将页交换文件放在与WIndows NT引导区相同的分区中。 

  4.使用磁盘镜像或磁盘带区集可以提高磁盘的读取性能。 

  5.关于日志的记录,应该采用文件记录而不是记录到ODBC数据源。此外,还可以在记录期间增加用来记录日志的内存缓冲区的容量来减少磁盘的活动。该缓冲区的缺省容量值为64KB。 

  6.最好把所有的数据都储存在一个单独的分区里。然后定期运行磁盘碎片整理程序以保证在存储Web服务器数据的分区中没有碎片。使用NTFS有助于减少碎片。笔者推荐使用Norton的Speeddisk,可以很快地整理NTFS分区。 

  7.虽然SSL可以提供相当可靠的加密传输。但是所需的额外开销会导致IIS服务器速度下降,尤其是在处理大型文件的时候。所以应该只对确实需要保护的目录进行SSL加密。


推荐阅读
  • 开机自启动的几种方式
    0x01快速自启动目录快速启动目录自启动方式源于Windows中的一个目录,这个目录一般叫启动或者Startup。位于该目录下的PE文件会在开机后进行自启动 ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • PTArchiver工作原理详解与应用分析
    PTArchiver工作原理及其应用分析本文详细解析了PTArchiver的工作机制,探讨了其在数据归档和管理中的应用。PTArchiver通过高效的压缩算法和灵活的存储策略,实现了对大规模数据的高效管理和长期保存。文章还介绍了其在企业级数据备份、历史数据迁移等场景中的实际应用案例,为用户提供了实用的操作建议和技术支持。 ... [详细]
  • Unity与MySQL连接过程中出现的新挑战及解决方案探析 ... [详细]
  • 本文深入解析了WCF Binding模型中的绑定元素,详细介绍了信道、信道管理器、信道监听器和信道工厂的概念与作用。从对象创建的角度来看,信道管理器负责信道的生成。具体而言,客户端的信道通过信道工厂进行实例化,而服务端则通过信道监听器来接收请求。文章还探讨了这些组件之间的交互机制及其在WCF通信中的重要性。 ... [详细]
  • 优化后的标题:深入探讨网关安全:将微服务升级为OAuth2资源服务器的最佳实践
    本文深入探讨了如何将微服务升级为OAuth2资源服务器,以订单服务为例,详细介绍了在POM文件中添加 `spring-cloud-starter-oauth2` 依赖,并配置Spring Security以实现对微服务的保护。通过这一过程,不仅增强了系统的安全性,还提高了资源访问的可控性和灵活性。文章还讨论了最佳实践,包括如何配置OAuth2客户端和资源服务器,以及如何处理常见的安全问题和错误。 ... [详细]
  • MySQL 5.7 学习指南:SQLyog 中的主键、列属性和数据类型
    本文介绍了 MySQL 5.7 中主键(Primary Key)和自增(Auto-Increment)的概念,以及如何在 SQLyog 中设置这些属性。同时,还探讨了数据类型的分类和选择,以及列属性的设置方法。 ... [详细]
  • 秒建一个后台管理系统?用这5个开源免费的Java项目就够了
    秒建一个后台管理系统?用这5个开源免费的Java项目就够了 ... [详细]
  • 本文详细介绍了MySQL数据库的基础语法与核心操作,涵盖从基础概念到具体应用的多个方面。首先,文章从基础知识入手,逐步深入到创建和修改数据表的操作。接着,详细讲解了如何进行数据的插入、更新与删除。在查询部分,不仅介绍了DISTINCT和LIMIT的使用方法,还探讨了排序、过滤和通配符的应用。此外,文章还涵盖了计算字段以及多种函数的使用,包括文本处理、日期和时间处理及数值处理等。通过这些内容,读者可以全面掌握MySQL数据库的核心操作技巧。 ... [详细]
  • Juval Löwy主张,每个类都应被视为服务,这并非是为了让服务无处不在,而是因为微服务是经过深思熟虑后系统分解的自然结果。在他的设计和构建的系统中,这种理念有助于提高模块化、可维护性和扩展性。通过将每个类视为独立的服务,系统能够更好地应对复杂性,实现更灵活的部署和更高的性能。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 本文详细解析了 Android 系统启动过程中的核心文件 `init.c`,探讨了其在系统初始化阶段的关键作用。通过对 `init.c` 的源代码进行深入分析,揭示了其如何管理进程、解析配置文件以及执行系统启动脚本。此外,文章还介绍了 `init` 进程的生命周期及其与内核的交互方式,为开发者提供了深入了解 Android 启动机制的宝贵资料。 ... [详细]
  • 在本文中,我们将探讨如何在Docker环境中高效地管理和利用数据库。首先,需要安装Docker Desktop以确保本地环境准备就绪。接下来,可以从Docker Hub中选择合适的数据库镜像,并通过简单的命令将其拉取到本地。此外,我们还将介绍如何配置和优化这些数据库容器,以实现最佳性能和安全性。 ... [详细]
  • 在Cisco IOS XR系统中,存在提供服务的服务器和使用这些服务的客户端。本文深入探讨了进程与线程状态转换机制,分析了其在系统性能优化中的关键作用,并提出了改进措施,以提高系统的响应速度和资源利用率。通过详细研究状态转换的各个环节,本文为开发人员和系统管理员提供了实用的指导,旨在提升整体系统效率和稳定性。 ... [详细]
  • 在iOS开发中,基于HTTPS协议的安全网络请求实现至关重要。HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer)是一种旨在提供安全通信的HTTP扩展,通过SSL/TLS加密技术确保数据传输的安全性和隐私性。本文将详细介绍如何在iOS应用中实现安全的HTTPS网络请求,包括证书验证、SSL握手过程以及常见安全问题的解决方法。 ... [详细]
author-avatar
loushuyu60
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有