未分离时Docker容器的http响应速度较慢

时间:2017-11-01 22:18:14

标签: http docker

我正在使用Docker版本17.06.2-ce,在CentOS 7.2.1511上构建cec0b72。

我正在浏览docker getting started tutorial。我已经和Docker玩了一段时间,但并不多。

我已经通过网站上的复制粘贴构建了friendlyhello图像。使用

运行时
docker run -d -p 8080:80 friendlyhello

我可以curl localhost:8080并在~20ms内得到答复。但是,当我跑

docker run -p 8080:80 friendlyhello

即,没有从容器中分离,尝试curl localhost:8080需要超过50 。这对我来说毫无意义。

编辑:似乎反复杀死容器可能与此有关。无论是那个,还是随机的,给定的容器是否可以快速服务。停止并启动一堆具有-d标志的相同容器作为唯一更改后,我只看到来自分离容器的快速响应,但分离的容器也可能响应缓慢。我还认为值得一提的是,95%以上的慢响应时间是56s或61s。

尝试研究此错误会给我plenty of responses about curl being slower when run inside a container,但这就是我能找到的所有内容。

如果重要的话,我正在开发一台虚拟机,无法访问主机,我一直都是root用户,并且在网络防火墙和代理之后,但我不认为只在处理localhost时这才重要。

1 个答案:

答案 0 :(得分:2)

我很蠢。

The getting started tutorial says that it can take a long time for http responses with this app因为他们在教程中进一步添加了一个未满足的依赖项。不幸的是,他们在下一页说明了这一点,所以如果你是第2部分和初学者,那么在你放弃并继续第3部分之前,不清楚为什么会出现这个问题。他们声称响应可能需要“最多30个”秒“;我的是两倍,但很明显,这是根本原因。