干这行十几年,我最烦听到的一句话就是“我们利用率低,是不是该再买点”。每次在客户现场翻完 License Server 的日志,我都想把这行字拍在采购桌上:你连分母是什么都没搞明白,买什么买。
工业软件的许可证有个很操蛋的地方:它不像办公软件,一人一个号,用了就是用了,没用就是没用。 CAD、CAE、PLM 这些玩意儿,计量方式本身就五花八门。Named User 绑死在账号上,人离职了席位还在计费;Concurrent 走共享池,理论上释放了别人就能拿,但实际跑起来,一个 CAM 工程师晚上下班不关软件,复杂项目在后台挂着,许可就被“幽灵占用”了一整夜,第二天早班的人排队排到骂娘。你看到的“利用率低”,有时候根本不是买多了,是池子里的水一边漏一边有人拿杯子占着不喝。
所以查闲置的第一刀,不能砍在“总数”上。总数是最会骗人的东西。白天高峰池子满了,夜里空着,一平均,数字漂亮得很,但下午三点评审前抢不到就是抢不到。要看的不是平均利用率,是峰值并发的形状:峰值是尖的还是平的,集中在周一上午还是月末,是某个高级模块被打爆还是基础席位全在空转。这些信息不拆到模块级,你永远不知道紧张是真缺,还是高配低用。一个买了 5 轴铣削模块的人,实际只用 2.5 轴出粗刀路,模块的钱花了,产能没出来,这就是错配,跟买多了是两码事。
计量口径也得较真。安装量、活跃量、并发量,在工业软件这里必须是三个分开的抽屉。Named User 看的是账号活跃,Concurrent 看的是峰值占用,有些模块还按 Feature 或 Role 授权,一个用户身上叠了好几个功能位,计费跟着最重的那一档走。你要是拿安装数去除采购数,得出的“利用率”基本是废的,因为装了的机器可能半年没人登录过,登录了的账号可能挂着不动。
回收这件事,顺序比决心重要。别一上来就动刀,先把不活跃账号和明显闲置的席位捞出来,回读源日志确认不是统计口径造成的假阳性。然后才碰那些“人还在、但占用方式有问题”的场景。自动回收必须带可逆性,先隔离、通知,再释放,每一步留审计痕迹,不然工程师跑到一半被踢下线,你后面所有治理动作都会失去业务信任。

最后讲个真事。某装备制造企业,Enovia 五百个许可,年均成本两千多万,自己感觉“不太够用”,采购申请已经递到老板桌上了。我们进去先没碰采购,只做了一件事:把 License Server 的借出/释放日志跟账号活跃记录并起来看。结果闲置率 35%,年度浪费大约八百万。更关键的是,那些闲置里面有一大块是典型的 session camping——设计员下班不退出,租约一直续着,别人拿不到。上了监控和智能回收之后,闲置压到 8%,项目组没加一个许可,高峰期排队反而短了。那个采购申请最后撤了,省下来的钱拿去补了真正卡脖子的 CAE 求解模块。
所以说,利用率低先别急着写采购单。把分母掰开,把模块拆开,把占用时间线拉出来。数据不说话的时候,你做什么动作都是在赌。