我一直在使用 sc.exe 远程停止一堆自定义 Windows 服务,作为我们产品部署脚本的一部分。在我们从 Windows 2003 迁移到 Windows 2008 r2 之前,这一直运行良好。现在,无论您执行查询、停止、启动等操作,都需要大约 20 到 25 秒才能响应。有 10 台服务器(8 台虚拟服务器和 2 台物理服务器)。在物理服务器和虚拟服务器上大约需要 20 秒。
主要的问题是我的生产部署已经从每个环境大约 12 秒增加到一分钟以上。
只是想知道是否需要在 Win 2008 防火墙上打开特定端口以加快进程,或者是否需要任何特定权限。
注意:它确实有效。只是速度很慢。
问候,
大卫
答案1
您是否尝试过类似的事情:
(gwmi -query "select * from win32_service where name='serviceiwanttostop'" -computer remoteserver).stop
从 powershell 提示符查看是否更快?