黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

Java程序員需警惕5大Docker誤區(qū)


  Docker現(xiàn)在很火,容器技術(shù)看上不無所不能,但這實際上是一種誤解,不要被炒作出來的泡沫迷住雙眼,動力節(jié)點Java老師拋去炒作,理性地從Java程序員的角度,列舉出Docker目前的五大誤區(qū),幫助你更好地理解Docker的優(yōu)勢和問題。

 

  如果我們拋去那些媒體和廠商們的炒作,如何才能更理性的使用Docker?

 

  Docker近來備受關(guān)注,原因顯而易見。如何成功交付代碼一直困擾著大家。傳統(tǒng)的容器技術(shù)在眾多需求和模板中亂成一團。而Docker可以簡單且重復(fù)的創(chuàng)建容器。相比其它容器,使用Docker可以更快、更自然的交付代碼。Duang,Docker火了!隨之而來也有一些誤解和誤區(qū)。不要太相信別人說Docker好用或者不好用。自己理性地全面思考一下Docker,會幫助你真正理解是否真的需要它。

 

  主要誤區(qū)

 

  1.Docker是輕量級虛擬機

 

  這是大家初學(xué)Docker時主要的誤解。這種誤解倒也情有可原,Docker的確看上去有點像虛擬機。Docker網(wǎng)站上甚至有人比較了Docker和虛擬機的區(qū)別。但是,Docker實際上不是輕量級虛擬機,而是改進了的Linux容器(LXC)。Docker和虛擬機是完全不一樣的,如果你把Docker容器當(dāng)成輕量級虛擬機來用,會遇到很多問題。

 

  在使用Docker之前,必須了解Docker容器和虛擬機有很多本質(zhì)的區(qū)別。

 

  資源隔離:Docker達不到虛擬機所能提供的資源隔離水平。虛擬機的資源是高度隔離的,而Docker從設(shè)計之初就需要共享一些資源,這些資源是Docker無法隔離和保護的,比如頁緩存和內(nèi)核熵池。(注:內(nèi)核熵池很有趣,它收集并且存儲系統(tǒng)操作生成的隨機比特。機器在需要隨機化時會使用這個池,比如密碼相關(guān)。)如果Docker容器占用了這些共享資源,那么其它進程在這些資源被釋放前只能等待。

 

  開銷:大多數(shù)人都知道虛擬機的CPU和RAM能提供類似物理機的性能,但是有很多額外的IO開銷。因為放棄了虛擬機的guestOS,Docker的package更小,比起虛擬機需要更少的存儲開銷。但這并不意味著Docker沒有任何開銷問題。Docker容器依然需要注意IO開銷的問題,只不過沒有虛擬機嚴(yán)重而已。

 

  內(nèi)核使用:Docker容器和虛擬機在內(nèi)核使用上完全不同。每個虛擬機使用一個內(nèi)核。Docker容器則是在所有容器間共享內(nèi)核。共享內(nèi)核帶來一些效率的提升,但是以高可用和冗余為代價。如果虛擬機發(fā)生了內(nèi)核崩潰,只有這個內(nèi)核上的虛擬機會受影響。而Docker容器如果內(nèi)核崩潰了,所有的容器都會受影響。

 

  2.Docker使得應(yīng)用可擴展

 

  因為Docker可以在很短的時間內(nèi)在多個服務(wù)器上部署代碼,自然有人會覺得Docker可以讓應(yīng)用自身變得可擴展。不幸的是,這是錯誤的。代碼是應(yīng)用的基石,而Docker并不會重寫代碼。應(yīng)用的可擴展性依然取決于程序員。使用Docker并不會自動得讓你的代碼易于擴展,只是讓這些代碼更容易跨服務(wù)器部署而已。

 

  3.Docker在生產(chǎn)環(huán)境廣為使用

 

  因為Docker勢頭正勁,很多人便認(rèn)為Docker可以在生產(chǎn)環(huán)境上大規(guī)模使用。事實上,這是不對的。注意Docker還是很新的技術(shù),還不成熟,正在成長,這意味著還有很多煩人的bug和待完善的功能。對新技術(shù)感興趣這沒錯,但是需要弄清楚新技術(shù)的正確使用場景和需要注意的地方。現(xiàn)在,Docker很容易應(yīng)用到開發(fā)環(huán)境。使用Docker可以很容易地搭建出很多不同的環(huán)境(至少,給人的感覺是能夠搭建出不同的環(huán)境),這對于開發(fā)很有用。

 

  而在生產(chǎn)環(huán)境中,Docker的不成熟和不完善也限制了使用場景。比如,Docker不直接支持對多機器的網(wǎng)絡(luò)和資源的監(jiān)控,這使得它幾乎無法在生產(chǎn)環(huán)境中使用。當(dāng)然也有很多有潛力的地方,比如可以將同一個package從開發(fā)環(huán)境直接部署到生產(chǎn)環(huán)境。還有一些Docker運行時特性對于生產(chǎn)環(huán)境也很有用。但是總的來說,在生產(chǎn)環(huán)境里,目前不足多于優(yōu)勢。這并不是說無法成功運用到生產(chǎn)環(huán)境,只是現(xiàn)在還不能指望它一下子成熟。

 

  4.Docker是跨OS的

 

  另一個誤解是Docker在任意操作系統(tǒng)和環(huán)境上都可以工作。這可能來自于裝卸貨物的集裝箱的類比,但是軟件和操作系統(tǒng)的關(guān)系可不像船位那么簡單直接。

 

  實際上,Docker只是Linux上的技術(shù)。并且Docker依賴特定的內(nèi)核特性,必須要有新版本的內(nèi)核才行。基于不同OS的差異性,跨OS時,如果使用的不是底層通用的特性,會遇到很多麻煩的問題。這些問題可能只有1%的發(fā)生率,但是當(dāng)你在多臺服務(wù)器上部署時,1%也是致命的。

 

  雖然Docker只在Linux上運行,但是也可以在OSX或者Windows上使用Docker。使用boot2docker會在OSX或Windows機器上運行一個Linux虛擬機,這樣Docker可以在這個虛擬機里運行。

 

  5.Docker增強應(yīng)用的安全性

 

  覺得Docker可以改進代碼和交付代碼過程的安全性,這也是誤解。這也是真實的集裝箱和軟件上容器的差別。Docker是一種容器化技術(shù),添加了編排方法。但是Linux的容器有一些安全漏洞可能會被攻擊。Docker并沒有為這些漏洞添加任何安全層或者補丁。它還不是能保護應(yīng)用的鐵布衫。

 

  從Java角度看

 

  一些Java開發(fā)人員已經(jīng)開始使用Docker。Docker的某些特性讓我們更容易構(gòu)建可擴展的上下文環(huán)境。不像uber-jar,Docker可以幫助你將所有的依賴(包括JVM)打包到一個隨時可發(fā)布的鏡像中。這也是Docker對于開發(fā)人員來說迷人的地方。但是,這也會帶來一些隱患。一般來說,程序員需要用不同的方式和代碼交互–監(jiān)控它,調(diào)試它,連接它,調(diào)優(yōu)它….如果使用Docker,這些都會需要額外的工作。

 

  比如,我們想使用jconsole,它依賴于JMX功能,JMX因為要使用RMI又需要網(wǎng)絡(luò)。使用Docker的話就不是很直接,需要一些技巧去開啟所需端口。我們開始發(fā)現(xiàn)這個問題是當(dāng)我們想要構(gòu)建Takipi的Docker應(yīng)用,我們不得不在容器里JVM之外運行了一個后臺程序。詳細(xì)的解決方案在GitHub上。

 

  另外一個很嚴(yán)重的問題是Docker容器的性能調(diào)優(yōu)相當(dāng)困難。當(dāng)使用容器時,你不知道每個容器到底會分配多少內(nèi)存。如果你有20個容器,內(nèi)存會以你不確定的方式分配給它們。如果你打算用參數(shù)-Xmx調(diào)優(yōu)堆的大小,就很困難,因為對Docker容器內(nèi)JVM的處理取決于能夠自動得到該容器分配到的內(nèi)存大小。如果都不知道分配了多少內(nèi)存,性能調(diào)優(yōu)幾乎不可能。

 

  結(jié)論

 

  Docker是很有意思的技術(shù),有一些真實有效的使用場景。作為一個新興技術(shù),還需要大量時間來解決缺失的功能和已知的bug。但是,現(xiàn)在這個領(lǐng)域的確有很多的炒作。不過動力節(jié)點的Java老師提醒大家記住哦,炒作可不是成功。

 

  

 

上一篇:11個錯誤會在你測試代碼時出現(xiàn)
下一篇:碼農(nóng)需要掌握的9款大數(shù)據(jù)處理語言

開班信息

主站蜘蛛池模板: 国产精品偷伦视频免费观看的 | 青青草国产精品久久 | www国产永久免费视频看看 | 午夜影院在线免费观看 | 欧美高清视频手机在在线 | 狠狠的日| 亚洲伦理中文字幕一区 | 你懂得在线观看 | 视频精品一区 | 日日干日日摸 | 人人草人人干 | 国产丝袜制服 | 免费毛片网站在线观看 | 国产va精品免费观看 | 久久国产综合精品欧美 | 日日夜夜影院 | 久久夜靖品 | 亚洲第一色网站 | 全日本爽视频在线 | 手机福利视频一区二区 | 我要看免费的毛片 | 久操精品在线观看 | 国产综合色香蕉精品五月婷 | 亚洲永久视频 | 韩剧伦理在线 | 久久国产香蕉视频 | 欧美最新的精品videoss | 免费观看一级特黄三大片视频 | 亚洲深夜福利 | 免费的a级片 | 国产亚洲综合一区 柠檬导航 | 日韩三级久久 | 日韩黄色免费 | 国产成人综合久久亚洲精品 | 一级做a爰片性色毛片思念网 | 天堂男人2021av | 日本不卡va | 动漫美女无遮挡 | 国产情侣草莓视频在线 | 国产色手机在线观看播放 | 色婷婷狠狠久久综合五月 |