了解了Docker內(nèi)部引擎及作用后,我們還需要通過Docker的具體架構(gòu),了解Docker的整個(gè)運(yùn)行流程。接下來借助Docker官網(wǎng)的架構(gòu)圖對Docker架構(gòu)進(jìn)行詳細(xì)說明,如下所示: 查看全文>>
技術(shù)文章2020-05-27 |傳智播客 |Docker架構(gòu)
了解了Docker的概念和特點(diǎn)后,相信很多人對Docker與虛擬機(jī)的區(qū)別會(huì)產(chǎn)生疑惑,那么它們到底有什么不同呢?下面通過一張對比圖來說明兩者的主要區(qū)別,如下圖所示: 查看全文>>
技術(shù)文章2020-05-27 |傳智播客 |Docker與虛擬機(jī)的區(qū)別
Docker是一個(gè)開源的應(yīng)用容器引擎,它基于go語言開發(fā),并遵從Apache2.0開源協(xié)議。使用Docker可以讓開發(fā)者封裝他們的應(yīng)用以及依賴包到一個(gè)可移植的容器中,然后發(fā)布到任意的 Linux 機(jī)器上,也可以實(shí)現(xiàn)虛擬化。Docker 容器完全使用沙箱機(jī)制,相互之間不會(huì)有任何接口,這保證了容器之間的安全性。 查看全文>>
技術(shù)文章2020-05-27 |傳智播客 |Docker是什么
自旋鎖原理非常簡單,如果持有鎖的線程能在很短時(shí)間內(nèi)釋放鎖資源,那么那些等待競爭鎖的線程就不需要做內(nèi)核態(tài)和用戶態(tài)之間的切換進(jìn)入阻塞掛起狀態(tài),它們只需要等一等(自旋),等持有鎖的線程釋放鎖后即可立即獲取鎖,這樣就避免用戶線程和內(nèi)核的切換的消耗。 查看全文>>
技術(shù)文章2020-05-26 |傳智播客 |自旋鎖原理
樂觀鎖是一種樂觀思想,即認(rèn)為讀多寫少,遇到并發(fā)寫的可能性低,每次去拿數(shù)據(jù)的時(shí)候都認(rèn)為別人不會(huì)修改,所以不會(huì)上鎖,但是在更新的時(shí)候會(huì)判斷一下在此期間別人有沒有去更新這個(gè)數(shù)據(jù),采取在寫時(shí)先讀出當(dāng)前版本號,然后加鎖操作(比較跟上一次的版本號,如果一樣則更新),如果失敗則要重復(fù)讀-比較-寫的操作。 查看全文>>
技術(shù)文章2020-05-26 |傳智播客 |樂觀鎖和悲觀鎖的區(qū)別
對于sleep()方法,我們首先要知道該方法是屬于Thread類中的。而wait()方法,則是屬于Object類中的。 查看全文>>
技術(shù)文章2020-05-26 |傳智播客 |sleep和wait的區(qū)別
Java語言提供了弱同步機(jī)制,即volatile變量,以確保變量的更新通知其他線程。volatile變量具備變量可見性、禁止重排序兩種特性。volatile變量不會(huì)被緩存在寄存器或者對其他處理器不可見的地方,因此在讀取volatile類型的變量時(shí)總會(huì)返回最新寫入的值。 查看全文>>
技術(shù)文章2020-05-26 |傳智播客 |volatile關(guān)鍵字的作用
在了解“什么是Java”之前,我們先來認(rèn)識下什么是計(jì)算機(jī)語言。計(jì)算機(jī)語言(Computer Language)是人與計(jì)算機(jī)之間通信的語言,它主要由一些指令組成,這些指令包括數(shù)字、符號和語法等內(nèi)容,程序員可以通過這些指令來指揮計(jì)算機(jī)進(jìn)行各種工作。 查看全文>>
技術(shù)文章2020-05-25 |傳智播客 |Java是什么
北京校區(qū)