供应商表示,他们的软件需要 Windows Server 2003/2008 而不是 Windows 7 Professional,因为它在非服务器操作系统上性能不佳。具体原因是 Windows 7 Pro 上的网络连接数量有限。我有 10 个客户端工作站,而 Windows 7 Pro 上的最大对等连接数为 20(根据我在网上找到的一些随机帖子)。
该应用程序不处理域,不使用 IIS、Exchange 或其他服务器软件。可执行文件驻留在“服务器”计算机上,客户端使用对等连接(映射驱动器)连接到服务器并运行可执行文件(例如 \servername\folder\program.exe)。
硬件要求指出,建议使用 Core2Duo 或更好的处理器以及 8 GB 的 RAM。我有一台 i7 处理器和 12 GB 的 RAM,但运行的是 Windows 7 Pro(它们不支持)。
当程序托管在 Windows 7 Pro 而不是 Windows Server 2003/2008 上时,哪些原因可能导致性能不佳?
谢谢
编辑 1:首先,感谢您的反馈。我知道这违反了供应商的要求,也不打算在工作站操作系统上实施该程序,但我真正想知道的是技术的详细信息。当工作站操作系统和服务器操作系统都在同一硬件上运行时,什么可能导致其性能较差?
答案1
20 个并发连接的限制也适用于 SMB 连接。你真的不是如果您将自己限制为最多 20 个客户端,请考虑可扩展性。
更大的问题是你不会遵循供应商的要求。他们不支持你想做的事情,所以不要做。他们可能不会针对非服务器操作系统进行 QA,所以你不应该在非服务器操作系统上运行它。
更不用说使用工作站来执行服务器的功能让系统管理员哭泣。
答案2
从技术上来说?这完全取决于程序的架构。
有时确实有“真实”的原因;服务器操作系统针对服务器任务而非桌面任务进行了调整。它们可以针对更好的网络性能进行调整,而不是提供更好的桌面体验。
通常,归根结底是供应商不想支持桌面问题。他们有一套经过测试的系统,如果你把它放在他们没有测试过的东西上,它可能会正常工作。但如果你真的遇到了麻烦,他们会把指针指向一张大海报,上面明确写着“我们不支持你所做的事情”,并告诉你你没有资格获得支持,请不要阻塞我们的技术支持热线……
我最后想到的是许可。对于多用户,通常需要为所有用户提供服务器许可证;桌面工作站没有获得此许可(取决于操作系统)。
归根结底,在大多数情况下,它只在服务器上运行,因为供应商告诉你要这样做。不是技术原因。有时有真正的理由要求这样做。唯一的办法就是测试它。不过,大多数系统管理员对此不以为然。
答案3
我认为 20 个并发连接限制与 Windows 文件共享有关。因此,如果它不使用 Windows 文件共享,而是直接使用 IP 套接字,那么它应该可以正常运行。如果软件使用计算机上任何特定于 MS 的服务,则可能存在其他限制。但我猜它在技术上可以正常运行。
另一个区别是,Windows 服务器倾向于以优化的方式进行调整以在后台提供服务,而 Windows 7 等桌面操作系统则经过优化以提供更好的用户体验。
不过,正如其他人提到的,供应商可能不想在 Windows Server 以外的任何平台上支持他们的产品。您可能会发现安装程序阻止您在其他平台上安装。尝试一下,看看你能走多远。