在 64 位和 32 位上运行 IIS 的唯一性能优势是允许访问更大的内存地址空间。
如果您正在执行正常的 ASPX 页面处理,那么您可能不需要从任何单个进程处理超过 4gb 的数据。假设您在 32 位模式下运行,在同一台机器上有多个工作进程的网络花园。在这种情况下,每个进程最多可以寻址 4GB。
当您执行缓存时,最大的优势就会出现。64 位进程可以维护一个巨大的内存缓存(假设您有 32GB 或更多的 RAM 来支持它),以允许您在 Web 服务器上缓存复杂的页面内容或数据。当数据的生成成本高于检索数据的成本时,这可以提高性能 - 例如,如果数据是详细的形式(假设是蒙特卡罗模拟的结果),或者数据驻留在机外并且网络IO 时间比缓存检索时间昂贵得多。
如果您不使用缓存,那么 64 位 IIS 将无法帮助您。每次查找都需要 64 位指针,这会使一切变慢。
64 位服务器在用于数据库(如 SQL Server)或其他数据管理服务器(例如,企业电子邮件服务器,如 Exchange)时,比用于处理服务器(如 IIS 或它管理的工作进程)更有效。使用 64 位地址空间,需要管理数据的服务器可以将更多数据以及索引和其他缓存保存在内存中。这可以节省磁盘 IO 时间和查询进入时的详细说明时间。大多数 Web 应用程序不需要从单个进程处理超过 4gb 的数据。
也许是一个有用的类比:在交通领域,大型 SUV 就像 64 位机器,而普通的紧凑型乘用车就像 32 位服务器。您可以在大型 SUV 中携带更多东西,它具有更大的牵引能力,可容纳 8 人,GVWR 为 8600 磅。但有了这一切,你付出。卡车更重。它使用更多的燃料。如果您只运送大约 2 个人和一个行李袋,则不需要 SUV。使用较小的车辆会更好。它可以更快、更高效。