• Mac 下 Docker 运行较慢的原因分析及个人见解


    在mac 使用 docker 的时候,我总感觉程序在 docker 下运行速度很慢,接下来我一一分析我遇到的问题,希望大家能进行合理的讨论和建议。

    问题:

    1. valet 下打开 laravel 首页耗时 60ms,docker 下打开耗时 12s
    2. 在解决了第一个问题的前提下,docker 下仍旧耗时 2s

    解决方法:

    1. 第一个问题排查过程中发现是 DNS Lookup 时间太长导致的,搜索后发现,是因为使用了.local域名的原因,chrome 下就会存在解析时间过长,不过 safari 下没有这个问题。解决方法就是别在本地使用 .local的虚拟域名。

      解决前:

      image-20200312182610066

      解决后:
      image-20200312182730690
      我们再来看一下 valet 下是什么情况:

      image-20200312182845593

      我们发现 TTFB 竟然只有 21ms,而 docker 下竟然有1.8 秒。这差距巨大的,要知道,1 s = 1000ms。

    2. 在解决了第一个问题后我们发现了第二个问题,那么我找到官网说的docker 的缓存 :cached。我使用后,说实话,貌似毛用都没有。哈哈。

      不过天无绝人之路,我突然想到,既然这个问题是因为 docker 挂载出的问题,那么我能不能在本地使用valet来解析网站,然后其他的 es、kafka 等组件我放到 docker 中。

      尝试后看看结果:

      image-20200312183358476

      大家可以看到我这里使用的 valet 在本地解析网站后,连接的 docker 中的 es。ttfb 一下子就下来了。而我们再来看看 docker 下解析:

      image-20200312183518663

      其实差距还是蛮大的。

      我们再来对比数字,1780ms/60ms = 30 ,所以我们已经提速了 30 倍。

    讨论:

    大家有没有好的提速的建议?

  • 相关阅读:
    如何仅仅修改每一页的页眉
    resize
    Linux搭建深度学习环境
    Image.open、cv2.imread
    any、all
    cookie
    any、all
    库文件
    出来混总要还的,要提醒自己提高核心竞争力
    “行百里者半九十”(现在才逐渐真正理解这些道理)
  • 原文地址:https://www.cnblogs.com/zuolengqihua/p/12483045.html
Copyright © 2020-2023  润新知