64 位硬件和软件的优势 (Windows SharePoint Services 3.0)

如果继续使用熟悉且已知行之有效的东西,通常会感觉更轻松。为配合使用 Windows SharePoint Services 3.0 而广泛应用 64 位环境的趋势已慢慢减弱,这可能是因为人们在安装和配置 32 位硬件和软件过程中已经花费了许多时间、金钱以及精力。用户对迁移到 64 位环境似乎主要存在以下几点疑虑:成本高昂、操作困难、费时,以及与现有软件不兼容。通过本文,您会发现这些疑虑其实有些言过其实,可以说,使用 64 位环境带来的利要远大于弊。

了解 64 位环境

64 位环境由硬件和软件两个部分组成。虽然只转换到 64 位硬件也能对性能有些提高,但只有将 64 位硬件和软件结合使用,才能获得最佳效果。

64 位硬件

虽然 64 位处理功能在专门的应用程序中已经使用了几十年,但将其广泛应用于基于 Intel 的计算机是最近几年才开始兴起的。现在市场上销售的新服务器大多为 64 位服务器,但是,当前用作基于 Windows 的服务器的大多数计算机仍使用 32 位体系结构。32 位服务器的通病在于其对需要大量资源的应用程序(如 Windows SharePoint Services 3.0)的速度、可靠性和可伸缩性方面有一些限制。

在计算机体系结构中,术语 64 位 最常是指中心处理单元 (CPU) 的设计,但它也可能与计算机外部数据总线大小有关。撇开其他优点不说,首先,64 位 CPU 处理单个任务的速度是 32 位模型的两倍,此外,与 32 位处理器 4 GB 的寻址限制相比,它可以寻址的随机存取内存 (RAM) 要远远超出这一数字。拥有 64 位 CPU 和 64 位数据总线的服务器能够更好地处理和管理与 Windows SharePoint Services 3.0 关联的大型数据库文件。

不过并非所有 64 位计算机都相同。Intel 的 Itanium 系列 64 位处理器采用了与 Microsoft SharePoint 产品和技术不兼容的专有设计。因此,在购买用于 Windows SharePoint Services 3.0 服务器场的硬件时,务必要检查处理器类型。

64 位软件

只有当所安装的软件旨在使用 64 位硬件的所有功能时,64 位硬件的优势才能发挥得淋漓尽致。如果将用于 32 位计算机的软件安装在 64 位计算机上,虽然可兼容,但即使是有优势,也与预期相差甚远。Windows SharePoint Services 3.0 及其所有必备的操作系统和数据库软件都有用于 64 位计算机的安装选项。

Windows Server 2003 和 Windows Server 2008 都提供 64 位版本的标准版和企业版。如果您是一位希望升级到 64 位的批量许可客户,则将免费为您从 32 位转换到 64 位或 Itanium 版本。标准版在 1 路至 4 路服务器上最多支持 32 GB RAM。企业版提供更强大的支持,它在 1 路至 8 路服务器上支持大型数据库,并且最多支持 2 TB RAM。有关 64 位环境中 Windows Server 的详细信息,请参阅 Microsoft Windows x64 Edition 优势 (https://go.microsoft.com/fwlink/?linkid=147235&clcid=0x804)。

32 位和 64 位版本的 SQL Server 基于通用的体系结构。64 位版本的 SQL Server 经过了优化,可在使用 AMD Opteron、AMD Athlon 64、支持 Intel Extended Memory 64 Technology (EM64T) 的 Intel Xeon 或支持 EM64T 的 Intel Pentium IV 的服务器上运行。有关 64 位环境中 SQL Server 的详细信息,请参阅 64 位环境优势 (https://go.microsoft.com/fwlink/?linkid=147234&clcid=0x804)。

32 位版本的 Windows SharePoint Services 3.0 与 64 位版本的 Windows SharePoint Services 3.0 在功能集或安装过程方面没有任何区别。

64 位硬件和软件的优势

内存可寻址能力

  • 物理内存

    32 位系统体系结构只能对 4 GB 的地址空间进行直接寻址。运行 64 位版本 Windows Server 的 64 位系统体系结构所支持的物理内存和可寻址内存均可多达 1,024 GB。

  • 虚拟内存

    64 位版本 Windows Server 可以通过使用平面寻址模型对 16 TB 的虚拟内存进行寻址。将为应用程序和操作系统的虚拟地址空间均匀分配这些虚拟内存。32 位应用程序在 64 位环境中运行时,甚至也可以从增加的虚拟内存地址空间中受益。例如,尽管 32 位应用程序仍限制为使用 4 GB 虚拟内存,但它再也不必与操作系统共享该内存空间,因此,实际上有效地增加了它可使用的虚拟内存。

  • 连续内存

    32 位系统性能差通常不是因为缺少可用内存,而是因为连续内存中的块虽然足够大却不可用。在典型的 Windows SharePoint Services 3.0 部署中,Windows、Internet Information Services (IIS)、公共语言运行时 (CLR)、ASP.NET、SharePoint 产品和技术、SSP 和 MDAC 都可以要求获得服务器的一部分可用虚拟内存,从而可能导致 32 位地址空间变成一些很小的碎片。当 CLR 或 SharePoint 服务请求新内存块时,可能很难在密集的 32 位地址空间中找到 64 MB 大小的段。而 64 位系统能为用户模式进程提供几乎无限制的地址空间。

并行处理能力更强

使用 32 位体系结构的服务器被限制为 32 个 CPU。对并行处理能力和总线体系结构的改进使 64 位环境可以支持多达 64 个处理器,同时为每个额外的处理器提供接近线性的可伸缩性。

总线体系结构的速度更快

64 位体系结构提供更多更广泛的通用寄存器,从而大大提高了应用程序的整体速度。寄存器越多,就越不需要执行以下操作:将永久性数据写入内存,稍后使用很少的指令读回该数据。在 64 位环境中,调用函数的速度也更快,因为在寄存器中一次可向函数传递多达四个参数。

更安全

64 位版本的 Windows Server 提供了以下增强安全功能:

  • 缓冲区溢出保护

    当数据缓冲区中填充的数据量超出其计划处理的数据量时,将出现缓冲区溢出。在 64 位版本的 Windows Server 中,过程调用的第一批参数会传递到寄存器中。因此不太可能出现缓冲区溢出的情况,因为必须在寄存器中设置正确值并在堆栈上匹配变量和地址。

  • 数据执行保护

    AMD 和 Intel 生产的 64 位处理器提供对数据执行保护 (DEP) 的硬件支持。Windows Server 使用 DEP 防止执行恶意代码,即使在出现缓冲区溢出时也是如此。即使没有支持 DEP 的处理器,Windows Server 也可以检测到在本不该在的内存位置中运行的代码。

  • Patch Guard

    Microsoft Patch Guard 技术将阻止非 Microsoft 程序修补 Windows 内核。该技术将阻止内核模式驱动程序扩展或替换内核服务(包括系统服务分配表、中断描述符表 (IDT) 以及全局描述符表 (GDT))。此外,也可以阻止第三方软件分配内核堆栈或修补任何内核部分。

可伸缩性更好

在 64 位环境中,数据库服务器不仅可以获得几乎无限制的虚拟内存地址空间,而且还可以获得对更多物理内存的支持。运行 64 位版本的 Windows Server 和 SQL Server 的 64 位服务器可以将超大型工作数据集全部存储到 RAM 中,从而提高了性能和可伸缩性。此外,可以大幅减少支持指定用户群所需的应用程序服务器的数量,因为 64 位环境不要求工作进程每次都进行循环。循环次数的减少不但可以减少丢失的连接数,还可以提高 I/O 处理能力并改善用户体验。

总拥有成本下降

上面几节中列出的 64 位操作的所有优势都能让您事半功倍。通过使用 64 位环境,在减少使用硬件的同时,您可以管理更多数据、为更多用户提供服务、运行更多应用程序。由于减少了硬件,您还可以降低许可证成本、操作成本和基础结构成本。此外,64 位环境在数据中心中占用的空间更少,维护的成本也更低。最后,由于使用 64 位硬件和软件的 Windows SharePoint Services 3.0 服务器场可以提供更多发展空间,因此随着时间的推移,可以减少花费在设备的开销,因为设备的生命周期可能更长。

64 位环境可能无法做到面面俱到

64 位环境的缺点

通常,与 32 位服务器相比,64 位服务器需要更多虚拟内存。64 位框架将内存保留在基于处理器数量的段中。通常,4 处理器服务器至少应该有 5 GB 虚拟内存,8 处理器服务器至少应该有 6 GB 虚拟内存。

64 位应用程序能够访问更大的物理和虚拟内存空间,但这意味着地址表更大,从而导致数据事务开销也更大。因此,运行较小任务或重复任务的速度要比在 32 位环境中稍慢些。

通常的做法是重新规划空闲服务器设备。因此,如果您的组织有许多可用的 32 位服务器,可能就没有什么理由购买新的 64 位硬件来运行 Windows SharePoint Services 3.0。如果不得不在购买新的 64 位设备和重新规划旧的 32 位服务器之间作出抉择,应考虑到随着时间的推移,使用 64 位服务器和软件可能会为您省去一大笔操作费用。

某些第三方软件或 Windows SharePoint Services 3.0 功能在 64 位模式下无法工作。但是,SharePoint 产品和技术的未来版本将针对 64 位操作进行优化,并且完全不支持 32 位环境。

部署 64 位系统

新部署

在新的 64 位服务器场中部署 Windows SharePoint Services 3.0 与在 32 位服务器场中进行部署的差别不大。可用于新部署的规划文档包括有关将服务器场配置为最大程度利用 64 位硬件和软件的新增功能的信息。有关在 64 位环境中规划和部署 Windows SharePoint Services 3.0 的详细信息,请参阅 Windows SharePoint Services 3.0 技术入门

现有部署的转换

没必要一次性将整个 Windows SharePoint Services 3.0 部署转换为 64 位服务器。在大多数情况下,32 位服务器和 64 位服务器可以在同一服务器场中互不干扰地运行,而且执行增量转换可以分期分摊转换成本,并有助于保持整个转换过程中服务的连续性。

增量迁移到 64 位服务器

如果选择按照一次一台的方式将服务器迁移到 64 位服务器,最好先了解哪些服务器将从转换中受益最大。通过按特定顺序迁移服务器,您可以优化转换并可立即从性能改善中获益。下列服务器按照转换为 64 位服务器后的受益程度(由多到少)排序:

  1. 数据库服务器

    SQL Server 需要占用大量处理器资源和内存。迁移到 64 位服务器最直接的好处就是允许数据库服务器支持更多数据库,同时处理更多连接和事务。

  2. 前端 Web 服务器和应用程序服务器

    工作进程始终可以得益于额外的内存。在服务器上运行的服务和应用程序越多,它们从增强的内存管理中获得的益处越多,64 位环境提供的内存限制也越高。将前端 Web 服务器转换为 64 位服务器时,务必同时迁移所有服务和应用程序。

    建议不要将 32 位和 64 位前端 Web 服务器混在一起用于长期部署。因为如果一台或多台服务器的性能比其余服务器的性能好,可能会导致服务器负载不平衡。

  3. 运行 Excel Calculation Services 的应用程序服务器

    Excel Calculation Services 通常占用大量 CPU。64 位处理器和外部数据总线的体系结构的速度更快,因此可以显著提高性能。

  4. 索引服务器

    索引服务器对处理器和磁盘 I/O 的速度要求较高。此外,它们还需要同时维护大量连接。64 位体系结构提供增强的内存管理和较宽的数据总线,从而有助于减少爬网次数。

  5. 查询服务器

    查询服务器往往是服务器场中最安静的服务器,转换为 64 位硬件后的受益可能也最小。但是,在查询服务器一次要处理大量搜索请求的情况下,则性能提高显著。

64 位硬件上的 32 位软件

可以在 64 位硬件上运行 32 位软件。64 位版本的 Windows Server 包括可以模拟 32 位操作系统的 Windows on Windows 64-bit (WOW64) 转换层。在许多情况下,WOW64 可以使 32 位软件和 64 位软件在同一台计算机上同时运行。但是,只有 64 位版本的 SharePoint 产品和技术可以在 64 位版本的 Windows Server 上运行。

混合使用 32 位和 64 位服务器

运行混合使用 32 位和 64 位服务器的服务器场时,需要考虑以下重要注意事项:

  • 不要使用 Windows Server 2003 中的 /3GB 开关

    在总共具有 4 GB 虚拟地址空间的 32 位服务器上,/3GB 开关可以从内核将 1 GB 虚拟地址空间转移给用户模式进程,从而优化性能。不建议在 64 位硬件上使用此开关,因为它仅为内核留下了 1 GB 虚拟地址空间。64 位硬件使用的大型地址表可能会耗尽这 1 GB 地址空间,从而可能破坏计算机的稳定性。有关详细信息,请参阅知识库文章 Windows SharePoint Services 2.0(或更高版本)或 SharePoint Portal Server 2003 SP2(或更高版本)中不支持 Windows Server 2003 /3GB 开关 (https://go.microsoft.com/fwlink/?linkid=105919&clcid=0x804)。

  • 在每个拓扑结构层维护 32 位或 64 位同质性

    您可以在 32 位服务器和 64 位服务器混合环境中部署 Windows SharePoint Services 3.0 服务器场,条件是您要在每个拓扑结构层维护体系结构同质性。例如,可以将 64 位数据库服务器与 32 位前端 Web 服务器结合使用,或者将 64 位应用程序服务器与运行 Excel Services 的 32 位服务器结合使用。但是,不建议在同一服务器场内混合使用 32 位前端 Web 服务器和 64 位前端 Web 服务器。

  • 混合使用 32 位和 64 位服务器可能会增加服务器场的维护开销

    在混合使用 32 位服务器和 64 位服务器的方案中,必须为每个平台独立管理诸如第三方应用程序、自定义解决方案、软件修补程序以及更新之类的程序和软件。

摘要

如果在部署中运行 32 位服务器就已经足够,并且用户对其网站、应用程序和搜索请求的运行非常满意,可能就不用急于将 Windows SharePoint Services 3.0 部署转换为 64 位服务器。但是,如果服务器场的性能没有达到您或客户的期望、用户群增长很快、应用程序池回收的频率越来越高或者即将进行计划的设备升级,那么,此时您应达到正在不断完善的新标准并将设备和软件迁移到 64 位设备和软件。

另请参见

概念

性能和容量规划 (Windows SharePoint Services)
确定硬件和软件要求 (Windows SharePoint Services)
可下载书籍:Windows SharePoint Services 3.0 规划和体系结构