11-Docker MySQL數(shù)據(jù)庫測試對比

????說到部署,Docker將便攜性和易用性拉高到一個新水準。MySQL相關的Dockerfile和腳本已經發(fā)布很長時間台囱,在開發(fā)社區(qū)的使用率也穩(wěn)步增長。這一點也在意料之中读整。

????在影響到MySQL性能的每個環(huán)節(jié)上,用戶的典型擔憂在于:容器化以后咱娶,在這些環(huán)節(jié)上是否存在顯著的性能開銷米间。為此,我們進行了充分的性能測試膘侮,下面我會對測試結果的某些細節(jié)進行探討屈糊。

????我們的關注點主要在MySQL實例的IO和網絡性能,尤其是對比采用了不同存儲選項的實例琼了,以及docker bridge網絡模式帶來了多少性能開銷逻锐。測試的運行環(huán)境是:Oracle Server x5-2,處理器為2x Xeon E5-2660 v3(40硬件線程)雕薪,256G內存昧诱,操作系統(tǒng)Ubuntu16.04,Docker版本v1.11.2所袁。

????Docker 鏡像是由一組layer構成盏档,每一個layer代表文件系統(tǒng)的差異。Docker的存儲驅動負責疊加這些layer燥爷,進而構成一個鏡像蜈亩。然而懦窘,跳過docker存儲驅動的數(shù)據(jù)卷和宿主機目錄,在性能上接近原生的存儲稚配。AUFS是使用最廣泛的docker驅動程序畅涂,因此我們使用它進行測試。

????為了測試網絡開銷道川,我們分別對Docker host和bridge網絡進行了測試午衰,方法是創(chuàng)建容器時分別指定–net=host?或–net=bridged。創(chuàng)建容器時愤惰,默認采用bridge模式苇经。Host模式只是在宿主機的網絡棧上增加了容器,因此應該能夠避免bridge模式帶來的性能開銷宦言。

????測試時扇单,我們使用了一個自定義的配置文件。為了增加I/O負載奠旺,首先我們特意將緩沖池大小設置為數(shù)據(jù)庫大小的10%左右蜘澜。數(shù)據(jù)庫大小是2358MB,所以緩沖池大小為256MB响疚。然后鄙信,我們將緩存池大小逐漸增加到16384MB,觀察Docker不受I/O限制時忿晕,會出現(xiàn)什么情況装诡。

????Docker運行MySQL時,自定義配置是很直接的践盼。最簡單的方式是創(chuàng)建容器時將 /etc/my.cnf?掛載到容器中(-v /path/to/host/mycnf:/etc/mycnf)鸦采。你也可以修改容器,并將修改commit到鏡像中咕幻,但是這種方法不太好渔伯,因為每次升級MySQL時,你都要設置一次肄程。

????我們已經使用 sysbench 進行了測試锣吼。我們運行以下命令,以便建立我們的測試數(shù)據(jù)庫蓝厌。

????測試之前玄叠,先運行Warm-up測試,測試程序運行320s拓提,見下方诸典。然后運行完整的測試。每個測試運行三次,在下表的結果中反映了這三次運行的平均值狐粱。

????在bridge模式下測試時舀寓,我們會在根據(jù)需要改變—mysql-host的地址。

測試結果如下:

????我們發(fā)現(xiàn)肌蜻,I/O高負載情況下互墓,不同的方式測試結果差異性更小。Docker運行MySQL并沒有顯著的I/O或網絡瓶頸蒋搜。從這個角度看篡撵,Docker平臺上的MySQL與直接運行在宿主機上并沒有顯著差別。值得注意的是:Docker上運行時豆挽,采用不同的存儲選項和不采用存儲選項并沒有顯著差別育谬。

????之后,我們將緩存池大小調整到16384MB帮哈,觀察I/O負載低時膛檀,會發(fā)生什么情況。然后我們重新運行了一次測試用例娘侍。

結果如下:

????結果表明咖刃,與直接運行在宿主機上的MySQL相比,運行在Docker上有一定的性能開銷憾筏。網絡上也存在微小的開銷嚎杨。仍然需要注意的是,docker不同的存儲選項之間氧腰,性能并沒有實際的差別枫浙。

結論

????一個關鍵因素是I/O負載,I/O負載過高會抹平MySQL在Docker和宿主機上的差異古拴。當不受I/O負載影響時箩帚,Docker顯示出小幅度的瓶頸,尤其是運行在bridge網絡模式下時斤富。

????綜合來說,docker不同的存儲選項不會對MySQL性能產生較大影響锻狗,因此可以隨意選擇存儲满力。非常重要的一點是,將MySQL運行在容器中時轻纪,要通過配置油额,對其進行性能調優(yōu)。

????容器化MySQL已經在測試和開發(fā)環(huán)境中大量使用刻帚,我們的測試結果也顯示在生產環(huán)境中選擇容器化MySQL并不需要性能方面的考慮潦嘶。

備注:以上內容完全摘錄自網上,供參考崇众。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末掂僵,一起剝皮案震驚了整個濱河市航厚,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌锰蓬,老刑警劉巖幔睬,帶你破解...
    沈念sama閱讀 217,509評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異芹扭,居然都是意外死亡麻顶,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評論 3 394
  • 文/潘曉璐 我一進店門舱卡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來辅肾,“玉大人,你說我怎么就攤上這事轮锥〗玫觯” “怎么了?”我有些...
    開封第一講書人閱讀 163,875評論 0 354
  • 文/不壞的土叔 我叫張陵交胚,是天一觀的道長咽扇。 經常有香客問我辟犀,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,441評論 1 293
  • 正文 為了忘掉前任狰腌,我火速辦了婚禮,結果婚禮上轮听,老公的妹妹穿的比我還像新娘笋鄙。我一直安慰自己,他們只是感情好互拾,可當我...
    茶點故事閱讀 67,488評論 6 392
  • 文/花漫 我一把揭開白布歪今。 她就那樣靜靜地躺著,像睡著了一般颜矿。 火紅的嫁衣襯著肌膚如雪寄猩。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,365評論 1 302
  • 那天骑疆,我揣著相機與錄音田篇,去河邊找鬼。 笑死箍铭,一個胖子當著我的面吹牛泊柬,可吹牛的內容都是我干的。 我是一名探鬼主播诈火,決...
    沈念sama閱讀 40,190評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼兽赁,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起刀崖,我...
    開封第一講書人閱讀 39,062評論 0 276
  • 序言:老撾萬榮一對情侶失蹤惊科,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后蒲跨,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體译断,經...
    沈念sama閱讀 45,500評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,706評論 3 335
  • 正文 我和宋清朗相戀三年或悲,在試婚紗的時候發(fā)現(xiàn)自己被綠了孙咪。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,834評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡巡语,死狀恐怖翎蹈,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情男公,我是刑警寧澤荤堪,帶...
    沈念sama閱讀 35,559評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站枢赔,受9級特大地震影響澄阳,放射性物質發(fā)生泄漏。R本人自食惡果不足惜踏拜,卻給世界環(huán)境...
    茶點故事閱讀 41,167評論 3 328
  • 文/蒙蒙 一碎赢、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧速梗,春花似錦肮塞、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至位隶,卻和暖如春拷窜,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背涧黄。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評論 1 269
  • 我被黑心中介騙來泰國打工篮昧, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人弓熏。 一個月前我還...
    沈念sama閱讀 47,958評論 2 370
  • 正文 我出身青樓恋谭,卻偏偏與公主長得像糠睡,于是被迫代替她去往敵國和親挽鞠。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,779評論 2 354

推薦閱讀更多精彩內容

  • linux 查看系統(tǒng)版本確認使用的docker版本 uname -a --查看Linux內核版本命令cat /pr...
    只有香如故閱讀 1,220評論 1 4
  • 概述 自從docker容器出現(xiàn)以來,容器的網絡通信就一直是大家關注的焦點信认,也是生產環(huán)境的迫切需求材义。而容器的網絡通信...
    糙老爺們兒吃什么櫻桃閱讀 3,623評論 1 5
  • feisky云計算、虛擬化與Linux技術筆記posts - 1014, comments - 298, trac...
    不排版閱讀 3,848評論 0 5
  • Docker 學習目標: 掌握Docker基礎知識嫁赏,能夠理解Docker鏡像與容器的概念 完成Docker安裝與啟...
    執(zhí)筆夢一場閱讀 3,225評論 2 10
  • 三十八潦蝇,十歲生日印象 我十歲生日那天款熬,外婆早早地過來了,幾個舅舅也都過來了攘乒,就在大四合院里贤牛,家里...
    高領001閱讀 447評論 2 6