虚拟机在 HP Microserver 上的普通硬盘上运行速度非常快,但在客户数据中心运行速度却很慢。为什么?
细节:
我将 PHP/Oracle 系统(由我编写)迁移到 Oracle 12,即 Win 2012 Server 上的新 PHP。客户为我提供了一台虚拟机,我在家里的办公室进行了迁移。在我的家庭实验室服务器(HP Microserver Gen8、Xeon 1220L 和 WD Red 磁盘,无 raid,4GB 用于虚拟机)上,系统运行速度非常快。我原本以为用户会对加速感到非常满意。但是:
在客户 IT 部门将机器集成到他们的系统中(使用 SAS 和高端服务器,VM 内存为 10GB)后,系统的响应时间比我的微型服务器更长。用户说迁移(从 Win2003/32Bits)根本没有加快速度,如果我远程连接,我也可以证明这一点。
当然,我和我的客户使用同一个数据库(来自同一个转储)。
主要是数据库方面的问题,因为完整的业务逻辑都是用 PL/SQL 写在 Oracle 服务器上的。所以我怀疑 SAS 比我的 NAS 磁盘慢。当然,很多机器都在使用 SAS,但由于这确实是一个高端数据中心,我预计他们的主机至少和我的小型机器一样快。但我无法证明这一点。
由于我是一名程序员,而不是 ESXi 专家,有人能告诉我如何找出原因吗?IT 部门表示他们的配置是最佳的,这一定与我所做的 oracle 配置有关,在我看来这简直是一派胡言。
任何帮助我都非常感谢。谢谢!
更新:由于 IT 部门没有人能够发现问题,所以我想检查一下防病毒配置,事实上这就是原因,因为 oracle dbf 日志和 trc 文件被永久扫描......很奇怪。
答案1
您必须收集性能数据才能回答这个问题。在您的服务器上安装监控软件,并让其收集有关 CPU 使用率、平均负载、RAM 利用率、磁盘 IO 延迟、IOwait 等的指标。获得这些信息后,您就可以开始深入挖掘瓶颈所在。
当然,许多机器都使用 SAS,但由于这确实是一个高端数据中心,所以我希望它们的主机至少与我的小型机器一样快。
您可能会惊讶地发现许多数据中心都以“高端”著称。
总的来说,听起来你做了很多假设,但这些假设不会给你带来多大帮助。你需要可靠的经验数字和数据。只有拥有了这些,你才能开始解决这些性能问题。