最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

docker對網(wǎng)絡(luò)和程序速度的影響解讀

 更新時間:2025年01月02日 11:23:04   作者:后會無期77  
本文通過對比分析,測試了在宿主機和Docker容器中部署Spring Boot程序的性能差異,在網(wǎng)絡(luò)延遲方面,Docker容器比宿主機慢0.1~0.2毫秒,在程序運行速度方面,宿主機和Docker容器的平均運行時間相近,單次運行時間存在較大差異,無法確定Docker容器在速度上優(yōu)于宿主機

前言

程序即可以部署在容器內(nèi),也可以部署在docker容器中,那么兩者有什么區(qū)別?

部署在容器中相對于直接部署在宿主機上,網(wǎng)絡(luò)速度是否會變慢?程序運行是否會慢?

環(huán)境說明

測試使用的服務(wù)器是百度智能云輕量級服務(wù)器,2核4G,6M寬帶。

  • 系統(tǒng): centos 7.9
  • docker版本: Docker version 20.10.13, build a224086
  • springboot版本: 2.7.3
  • JDK版本: 均為JDK8 (大版本相同避免了JDK大升級對程序運行產(chǎn)生較大影響,也是為了盡量公平)

網(wǎng)絡(luò)延遲測試

兩個標簽窗口,上圖直接使用宿主機進行ping 命令,下圖docker的容器內(nèi)進行ping命令,同時ping同一個ip地址。

根據(jù)多次ping命令的觀察,可以發(fā)現(xiàn)在docker容器內(nèi)進行ping命令速度比宿主機內(nèi)慢0.1~0.2 ms。

結(jié)論:docker 對網(wǎng)絡(luò)的影響很小,大約比主機慢0.1~0.2毫秒。

程序速度測試

程序運行速度的是,我們使用springboot 的web方式測試,代碼是生成一個倒序的數(shù)組,例如5,4,3,2,1,通過冒泡排序算法對數(shù)組排序(從小到大),得出排序所消耗的時間。

注意:

這里不使用隨機算法產(chǎn)生數(shù)組作為待排序樣本,是為了保證每次排序的樣本數(shù)組是完全一樣,保證每次測試公平。

代碼如下:

    @GetMapping("/test/{num}")
    public String test(@PathVariable("num") int num){
        long s=System.currentTimeMillis();
        int[] arr=new int[num];
       for(int i=num;i>0;i--){
           arr[num-i]=i;
       }
        //System.out.println(Arrays.toString(arr));
        BubbleSortMethod(arr);//冒泡排序
       // System.out.println(Arrays.toString(arr));
        long e=System.currentTimeMillis();
        return "排序:"+num+",耗時:"+(e-s)+" ms";
    }

    public static int[] BubbleSortMethod(int[] arr){
        int temp = 0;
        for (int i = 0; i < arr.length-1; i++) {
            for (int j = 0; j < arr.length-1 -i; j++) {
                if (arr[j] > arr[j+1]){
                    temp  = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                }
            }
        }
        return arr;
    }

將程序打包為jar包,分別直接部署在宿主機和docker容器內(nèi)。

為了避免不確定因素,我們需要多次測試,求平均值。

測試num=100000,將10萬個數(shù)字進行排序。

注:

為了避免服務(wù)器不同時刻,可能cpu負載不一樣,測試采用的交替方式,即一次宿主機,一次docker,降低可能存在的不同時刻主機負載的問題。

編號宿主機模式(ms)docker模式(ms)
145904869
245854647
347924750
451164615
550875087
650635372
749785120
855165098
951255076
1053465331
平均耗時50125002

平均值計算:去掉一個最大,去掉一個最小,求平均數(shù)。

總結(jié):

  • 宿主機和 docker容器運行程序的兩種方式,宿主機并沒有優(yōu)勢,docker容器運行的方式會盡可能爭取主機的資源,雖然從平均值看,docker運行的模式比宿主機直接運行還快一點,但是從單次比較,宿主機最快的一次運行4590毫秒,而docker最快的一次是4647毫秒,這又反向說明docker模式的并不一定比主機模式快,所以docker的平均運行比宿主機快屬于運行誤差,不能佐證docker在速度上優(yōu)于主機。
  • 所以主機運行模式和docker容器模式在程序運行效率上沒有明顯的差異。

關(guān)于網(wǎng)上的結(jié)論

在做這個測試之前,網(wǎng)上的結(jié)論是物理機比docker快很多,或者快百分之多少,但是似乎都是以聽說的方式得到的結(jié)論。這里試驗的目的為了以實際數(shù)據(jù)來得出結(jié)論,而不是靠猜測或者聽別人說。也非常希望有人以

實際的試驗結(jié)論進行辯駁,歡迎用事實依據(jù)的方法糾正。

上述試驗僅供參考。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Docker安裝Oracle19c史上最全步驟

    Docker安裝Oracle19c史上最全步驟

    本文主要介紹了Docker安裝Oracle19c,文中通過圖文介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2022-04-04
  • docker修改未啟動容器的配置信息操作

    docker修改未啟動容器的配置信息操作

    這篇文章主要介紹了docker修改未啟動容器的配置信息操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • 利用Docker Compose部署多容器LNMP環(huán)境的實戰(zhàn)步驟

    利用Docker Compose部署多容器LNMP環(huán)境的實戰(zhàn)步驟

    本次實戰(zhàn)通過Docker Compose成功構(gòu)建了完整的LNMP(Nginx + MySQL + PHP-FPM)開發(fā)環(huán)境,通過自定義PHP-FPM鏡像安裝MySQL擴展,配置 Nginx 反向代理 PHP 請求,本文介紹的非常詳細,感興趣的朋友一起看看吧
    2025-12-12
  • WIN10系統(tǒng)和Docker內(nèi)部容器IP互通方式

    WIN10系統(tǒng)和Docker內(nèi)部容器IP互通方式

    這篇文章主要介紹了WIN10系統(tǒng)和Docker內(nèi)部容器IP互通方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • docker批量刪除臨時鏡像

    docker批量刪除臨時鏡像

    在開發(fā)的時候,需要經(jīng)常發(fā)布開發(fā)包,在使用docker build構(gòu)建鏡像的時候,同一個版本經(jīng)常會使用相同tag,頻繁打包一段時間后,本地會出現(xiàn)很多Tag=<none>的臨時鏡像,下面給大家分享相關(guān)命令docker批量刪除Tag=<none>的臨時鏡像,感興趣的朋友一起看看吧
    2024-07-07
  • docker啟動ES內(nèi)存溢出的解決方案

    docker啟動ES內(nèi)存溢出的解決方案

    這篇文章主要介紹了docker啟動ES內(nèi)存溢出的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 遷移docker數(shù)據(jù)目錄,釋放硬盤數(shù)據(jù)過程

    遷移docker數(shù)據(jù)目錄,釋放硬盤數(shù)據(jù)過程

    這篇文章主要介紹了遷移docker數(shù)據(jù)目錄,釋放硬盤數(shù)據(jù)過程,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2026-05-05
  • Docker鏡像pull失敗兩種解決辦法小結(jié)

    Docker鏡像pull失敗兩種解決辦法小結(jié)

    有時候我們在拉取Docker鏡像的過程中會遇到一些問題,這篇文章主要介紹了Docker鏡像pull失敗兩種解決辦法的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-03-03
  • Docker鏡像發(fā)布到Docker?Hub的實現(xiàn)方法

    Docker鏡像發(fā)布到Docker?Hub的實現(xiàn)方法

    本文主要介紹了Docker鏡像發(fā)布到Docker?Hub的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 詳解使用Docker容器來源碼編譯etcd

    詳解使用Docker容器來源碼編譯etcd

    這篇文章主要介紹了詳解使用Docker容器來源碼編譯etcd,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-03-03

最新評論

革吉县| 文化| 海原县| 九龙城区| 甘泉县| 逊克县| 梅河口市| 年辖:市辖区| 开平市| 江源县| 贡觉县| 德令哈市| 浦城县| 江城| 渝北区| 萝北县| 台北市| 五莲县| 宁海县| 香港 | 高平市| 如东县| 丹棱县| 安阳县| 英超| 淮北市| 新乡市| 平南县| 岳普湖县| 丰县| 潢川县| 东山县| 萍乡市| 京山县| 桂林市| 汶上县| 富裕县| 奇台县| 白银市| 五莲县| 乡宁县|