为什么程序需要服务器操作系统与工作站操作系统?

一家供应商表示他们的软件需要Windows Server 2003/2008与Windows 7 Professional,因为它在非服务器操作系统上performance不佳。 具体原因是Windows 7 Pro上的networking连接数量是有限的。 我有10个客户端工作站,Windows 7 Pro上的最大对等连接数是20(根据我在网上find的一些随机的post)。

该应用程序不处理域,不使用IIS,Exchange或其他服务器软件。 可执行文件驻留在“服务器”计算机上,客户端使用点对点连接(映射驱动器)连接到服务器并运行可执行文件(think \ servername \ folder \ program.exe)。

硬件要求说明build议使用Core2Duo或更好的处理器以及8 GB的RAM。 我有一个12 GB的RAM的i7处理器,但运行Windows 7专业版(他们不支持)。

当程序托pipe在Windows 7 Pro与Windows Server 2003/2008上时,会导致性能下降的原因是什么?

谢谢

编辑1:首先,感谢您的反馈。 我知道这是违反供应商的要求,并没有计划在工作站操作系统上实施该程序,但我真正想知道的是技术细节。 当两个硬件都在同一个硬件上运行时,在工作站操作系统和服务器操作系统之间性能如何?

20个并发连接的限制也适用于SMB连接。 如果您将自己限制为最多20个客户端,那么您实际上并没有想到可扩展性。

更大的问题是,你不会遵循你的供应商的要求。 他们不支持你想做什么,所以不要这样做。 他们可能不会针对非服务器操作系统进行质量检查,因此您不应该将其运行在一台服务器上。

更何况使用工作站来执行服务器的function,使系统pipe理员哭泣。

技术上? 这完全取决于程序的架构。

有时候有一个“真实”的原因, 服务器操作系统被调整为服务器任务,而不是桌面任务。 他们可以调整更好的networking性能,提供更好的桌面体验。

通常情况下,供应商不希望支持桌面问题。 他们有一套他们testing的系统,如果你把它放在一些他们没有testing的东西上,它可能会工作得很好。 但是如果你遇到麻烦的话,他们会把指针棒放在一个大海报上,明确指出我们不支持你所做的事情,并告诉你无权支持,请停止堵塞我们的技术支持热线。

我认为最后一件事是授权。 对于多个用户,您通常需要所有用户的服务器许可证; 桌面工作站没有获得许可(取决于操作系统)。

归结起来,大多数情况下它只能在服务器上运行,因为供应商会告诉你。 不是技术原因。 有时候这是需求的真正原因。 唯一的方法是testing它。 尽pipe如此,大多数系统pipe理员都皱着眉头。

我相信20个并发连接限制与windows文件共享有关。 所以,如果它不使用Windows文件共享,而是直接使用IP套接字,那么它应该运行良好。 如果软件使用MS特定的机器上的任何服务,则可能还有其他限制。 但我的猜测是技术上运行良好。

另一个区别是,Windows服务器倾向于在优化后台服务方面进行调整,而Windows 7等桌面操作系统进行了优化,以提供更好的用户体验。

正如其他人所提到的,供应商可能不想在Windows Server以外的任何其他产品上支持他们的产品。 你可能会发现安装程序阻止你放入其他东西。 尝试一下,看看你有多远。