跳到正文

如何证明这个服务器有问题?

网友提供29 条回复

公司项目用了某小公司的云服务器( 8 核 16g ),使用过程出现各种奇奇怪怪问题。

1.启动 springboot 的 jar 包,正常服务器启动完成只需 2 、3 秒,但是在这台服务器上非常慢,需要 1 分 42 秒(日志输出 spring 那几个大字母就要好几秒,输出完 spring 就是漫长的等待直到开始输出日志)
2.接口响应时间间歇性的非常慢,正常请求不到 1 秒的接口,有时候会响应 20 多秒甚至超时。
3.一句稍微复杂的 sql,在本地笔记本的 mysql 上只需 1 、2 秒就执行。在服务器上的 mysql 需要十几秒的查询时间。
这个速度甚至不如我们自己笔记本。可以用什么软件来测试一下证明这台服务器有问题呢(或者是证明是我们软件层面的问题)

回复

opengps

楼层里有人提到超卖,这也是笼统不负责任的找答案方式,虽然不排除存在这个可能导致的,但是并不一定就是当前问题的根本原因
几乎所有云服务器都是虚拟机,而虚拟机有个天生的缺陷就是硬盘的 io 损失巨大(我测算过 1k 块大小的 iops 指标,只能达到原来物理硬盘的十分之一)
楼主可以先尝试下买个单独的 ssd 硬盘挂上,看下测试结果,在明确说下是不是硬盘问题,不建议直接说成“服务器问题”这么笼统的概念

opengps

具体问题需要找到具体制约因素,比如说硬盘慢,比如说 cpu 不够
单纯迁移过来表现不佳,没法归咎于“服务器问题”。分享个我的例子:最近给客户做的项目,明确要求如果使用云服务器硬盘则必须使用 ssd,但是对方一句我程序性能有问题,不服,我给他买了 ssd 换上立刻解决,当场打脸,对方不说话了

dilu

提供个方法

用 strace 看一下系统调用 再用-c 参数看看系统调用的统计

看看时间最长的系统调用是哪个

然后再有针对性的去排查 CPU 内存 磁盘 网络这几个方向

narmgalaxy

盲猜是 mysql 相关的问题

DJQTDJ

第一机器配置
第二目前 cpu 内存使用率
第三网络环境

AstroProfundis

石头盘吧

cuixiao603

@lv2016 #10 哈哈 我还拿这个服务器和阿里云的 1 核服务器对比了,阿里云的很快的

cuixiao603

@hasdream #9 time hostname -f 很快 毫秒级的

594duck

Spring 包又不需要解 DNS

又不是 SSH 慢,因为 DNS 反解,别瞎走方向。

先看系统各 IO 层面。

594duck

Spring 包又需要解 DNS

怀疑是服务器超售 CPU 同时磁盘 IO 不够

启动 Spring 包这么久,开二个 terminal 看一下 cpu 耗时和 idle,最重要的是 load average, NI, SI, WA 。

lv2016

关于第三点:我自己电脑的运行速度确实比我阿里云(4c8g)的服务器快

hasdream

启动慢? FQDN 是不是没有设置 `time hostname -f ` 看需要多久。 觉得性能有问题就跑个分看下 Unixbench

cuixiao603

@superrichman #5 能详细说说吗,是我本地的 dns 配置问题吗

cuixiao603

@xooass #4 哈哈 这个倒不是,就是某公司的云服务外包给某大公司来建设的那种,但是这个大公司的技术也不怎么样

buliugu

这个超卖的有点过分啊

superrichman

盲猜服务器 dns 配置有问题

xooass

某小公司? 不会就是那种租台服务器+买个 VPS 面板就开卖的吧,那种稳定性纯靠运气

laminux29

跑分软件不就是为这种场景准备的吗?

CPU 、内存、存储设备等,跑一次分就知道了。

xflcx1991

难道不是在这个服务器上做一套 Benchmark 吗?

soji18

跑分?

↑