概括

概括

好的,经过一系列调查后,我们重新开始。以下是我们所知道的:

Ubuntu 主机

15.04 在 i7 3820 (四核 3.6) 和三星 850 pro SSD 512gb SATA 6 上

$ docker info
Containers: 2
Images: 101
Storage Driver: overlay
 Backing Filesystem: extfs
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 3.19.0-28-generic
Operating System: Ubuntu 15.04
CPUs: 8
Total Memory: 15.61 GiB
Name: camacho
ID: ZOYN:QGDO:UGMJ:TDDM:WEEM:ZEHJ:4OKB:V5WR:RGCL:NOKG:F5W5:SDEL
WARNING: No swap limit support

OSX 主机

10.10.5 在 i7 (四核 2.7) 和 Apple SSD 512gb SD512E SATA 6 (2 年以上) 上

$ docker info
Containers: 3
Images: 185
Storage Driver: aufs
 Root Dir: /mnt/sda1/var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 191
 Dirperm1 Supported: true
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 4.0.9-boot2docker
Operating System: Boot2Docker 1.8.1 (TCL 6.3); master : 7f12e95 - Thu Aug 13 03:24:56 UTC 2015
CPUs: 8
Total Memory: 3.858 GiB
Name: dinghy
ID: PNNP:PI3E:CRUK:27RI:IPHW:HROF:NQA2:XKV6:VGCZ:WT7B:BZ7R:USWD
Debug mode (server): true
File Descriptors: 21
Goroutines: 54
System Time: 2015-09-24T19:16:01.715069994Z
EventsListeners: 1
Init SHA1: 
Init Path: /usr/local/bin/docker
Docker Root Dir: /mnt/sda1/var/lib/docker
Labels:
 provider=virtualbox

观察结果

  1. dockerized rspec 在 OSX 上的运行速度提高了 2 倍以上
  2. Ubuntu 上的 sysbench io 结果很糟糕
  3. dockerized iozone 结果符合预期(ubuntu 稍快)
  4. 硬件检查完成,ubuntu 主机位于 SATA 6 电缆和端口上

iozone 结果

docker run -it threadx/docker-ubuntu-iozone
$ iozone -R -l 5 -u 5 -r 4k -s 100m -F /home/f1 /home/f2 /home/f3 /home/f4 /home/f5 | tee -a /tmp/iozone_results.txt &

iozone 工作台

概括

我正在将我们的测试流程容器化,因为我们需要稳定性和并发性。我们做了很多工作来限制测试时间,而将时间增加 2 倍是一种可怕的倒退。

Sysbench 显示 ubuntu 主机的性能比 OSX 差 4 倍,我对此感到困惑。 dd测试iozone显示 ubuntu 主机的性能符合预期。

问题

为什么我的 rspec 在资源更快的 ubuntu 主机上性能更差?我应该在哪里调查?sysbench io 测试是指标还是异常?dockerized ubuntu 中性能不佳的根源是什么?

答案1

在多台设备上测试后,我们发现I/O接口似乎存在差异:

Sysbench 300 秒的通用 IO 传输结果:

  • SATA3 - 1GB
  • SATA6 Ubuntu - 3GB
  • SATA6 OSX(2 年以上的 mbpro)- 12gb
  • PCIe(新 mbpro)-57gb

我正在寻找 PCIe 存储的硬件升级。

相关内容