8

1. JVM中加載類的時機具體舉例?以及雙親委派加載的機制是什么?

(1)JVM中加載類的時機具體舉例:

1)使用new關鍵字實例化對象,讀取或設置一個雷的靜態字段以及調用一個類的靜態方法的時候

2)使用java.lang.reflect包的方法對類進行反射調用時,如果此類沒有初始化,則要觸發其初始化

3)當初始化一個類是,發現其父類還沒有進行初始化,則需要先觸發其父類的初始化

4)當虛擬機啟動是,用戶需要指定一個要運行的主類,虛擬機會先初始化這個主類

(2)雙親委派加載的機制:

當一個類收到了類加載請求,它首先不會嘗試自己去加載這個類,而是把這個請求委派給父類完成,每一個層次類加載器都是如此,因此,所有的加載請求都應該傳送到啟動類加載其中,只有當父類加載器反饋自己無法完成這個請求的時候,子類加載才會嘗試自己去加載。

2. Http協議和Https協議的區別是什么?

1)https協議需要到ca申請證書,一般免費證書較少,因而需要一定費用。

2)http是超文本傳輸協議,信息是明文傳輸,https則是具有安全性的ssl加密傳輸協議。

3)http和https使用的是完全不同的連接方式,用的端口也不一樣,前者是80,后者是443。

4)http的連接很簡單,是無狀態的;HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,比http協議安全。

3. http協議中的Get請求和Post請求的區別是什么?

1)https協議需要到ca申請證書,一般免費證書較少,因而需要一定費用。

2)http是超文本傳輸協議,信息是明文傳輸,https則是具有安全性的ssl加密傳輸協議。

3)http和https使用的是完全不同的連接方式,用的端口也不一樣,前者是80,后者是443。

4)http的連接很簡單,是無狀態的;HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,比http協議安全。

4. TCP/IP協議中三次握手機制具體是什么?窗口滑動機制的作用和基本機制是什么?

Tcp/Ip協議的三次握手機制圖:

具體解釋如下:

第一次握手:客戶端向服務器端發送連接請求包SYN(syn=j),等待服務器回應;

第二次握手:服務器端收到客戶端連接請求包SYN(syn=j)后,將客戶端的請求包SYN(syn=j)放入到自己的未連接隊列,此時服務器需要發送兩個包給客戶端;

(1)向客戶端發送確認自己收到其連接請求的確認包ACK(ack=j+1),向客戶端表明已知道了其連接請求

(2)向客戶端發送連接詢問請求包SYN(syn=k),詢問客戶端是否已經準備好建立連接,進行數據通信;

第三次握手:客戶端收到服務器的ACK(ack=j+1)和SYN(syn=k)包后,知道了服務器同意建立連接,此時需要發送連接已建立的消息給服務器;

向服務器發送連接建立的確認包ACK(ack=k+1),回應服務器的SYN(syn=k)告訴服務器,我們之間已經建立了連接,可以進行數據通信。

ACK(ack=k+1)包發送完畢,服務器收到后,此時服務器與客戶端進入ESTABLISHED狀態,開始進行數據傳送。

窗口滑動機制的作用:

TCP協議作為一個可靠的面向流的傳輸協議,其可靠性和流量控制由滑動窗口協議保證,而擁塞控制則由控制窗口結合一系列的控制算法實現。

具體介紹:

窗口滑動就是說一次傳輸幾個數據。對所有數據幀按順序賦予編號,發送方在發送過程中始終保持著一個發送窗口,只有落在發送窗口內的幀才允許被發送;同時接收方也維持著一個接收窗口,只有落在接收窗口內的幀才允許接收。這樣通過調整發送方窗口和接收方窗口的大小可以實現流量控制。

5. Dubbo的優點是什么?Dubbo對分布式事務是如何處理的?

Dubbo的優點:

1)Dubbo具有調度、發現、監控、治理等功能,支持相當豐富的服務治理能力

2)集群容錯

當服務調用失敗時,根據我們的業務不同,可以使用不同的策略來應對這種失敗。

3)負載均衡

當同一個服務有多個提供者在提供服務時, 客戶端如何正確的選擇提供者實現負載均衡dubbo也給我們提供了幾種方案

4)多協議

dubbo提供了多種協議給用戶選擇, 如Dubbo協議、Hessian協議、HTTP協議、RMI協議、WebService協議、Thrift協議、Memcached協議、Redis協議。

Dubbo對分布式事務的處理:

分布式事務暫不支持。用戶可以自己根據實際情況來實現分布式事務,比如:

1)結合RocketMQ消息中間件實現的可靠消息最終一致性

2)TCC補償性事務解決方案

3)最大努力通知型方案

6. Mysql數據庫的左連接、右連接、全連接?

左連接、右連接、全連接整體上屬于外連接的范疇。具體來講如下:

1)左連接:left join

左向外聯接的結果集包括 left join子句中指定的左表的所有行,而不僅僅是聯接列所匹配的行。如果左表的某行在右表中沒有匹配行,則在相關聯的結果集行中右表的所有選擇列表列均為空值。

左連接sql舉例:

select A.*,B.* from A left join B on A.id=B.infoid

2)右連接:right join

右向外聯接是左向外聯接的反向聯接。將返回右表的所有行。如果右表的某行在左表中沒有匹配行,則將為左表返回空值。

右連接sql舉例:

select A.*,B.* from A right join B on A.id=B.infoid

3)全連接: full join

完整外部聯接返回左表和右表中的所有行。當某行在另一個表中沒有匹配行時,則另一個表的選擇列表列包含空值。如果表之間有匹配行,則整個結果集行包含基表的數據值。

全連接sql舉例:

select A.*,B.* from A full join B on A.id=B.infoid

7. 數據庫的悲觀鎖、樂觀鎖的機制和使用場景是什么?

悲觀鎖:

悲觀鎖的特點是先獲取鎖,再進行業務操作,即“悲觀”的認為獲取鎖是非常有可能失敗的,因此要先確保獲取鎖成功再進行業務操作。

悲觀鎖的使用場景:

并發量不大且不允許臟讀,可以使用悲觀鎖解決并發問題

樂觀鎖:

樂觀鎖是先進行業務操作,不到萬不得已不去拿鎖。即“樂觀”的認為拿鎖多半是會成功的,因此在進行完業務操作需要實際更新數據的最后一步再去拿一下鎖。

樂觀鎖的使用場景:

1)樂觀鎖在不發生取鎖失敗的情況下開銷比悲觀鎖小,但是一旦發生失敗回滾開銷則比較大,因此適合用在取鎖失敗概率比較小的場景,可以提升系統并發性能

2)樂觀鎖還適用于一些比較特殊的場景,例如在業務操作過程中無法和數據庫保持連接等悲觀鎖無法適用的地方

8. Zookeeper的典型應用場景是什么?

1)命名服務(Naming Service)

2)數據發布與訂閱(配置中心)

3)分布式通知/協調

4)集群管理與Master選舉

5)分布式鎖

6)分布式隊列

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,739評論 6 534
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,634評論 3 419
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,653評論 0 377
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,063評論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,835評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,235評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,315評論 3 442
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,459評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,000評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,819評論 3 355
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,004評論 1 370
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,560評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,257評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,676評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,937評論 1 288
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,717評論 3 393
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,003評論 2 374

推薦閱讀更多精彩內容

  • 五、Java 虛擬機 一、什么是Java虛擬機Java虛擬機是一個想象中的機器,在實際的計算機上通過軟件模擬來實現...
    壹點零閱讀 749評論 0 0
  • 個人認為,Goodboy1881先生的TCP /IP 協議詳解學習博客系列博客是一部非常精彩的學習筆記,這雖然只是...
    貳零壹柒_fc10閱讀 5,083評論 0 8
  • 從三月份找實習到現在,面了一些公司,掛了不少,但最終還是拿到小米、百度、阿里、京東、新浪、CVTE、樂視家的研發崗...
    時芥藍閱讀 42,324評論 11 349
  • 1.這篇文章不是本人原創的,只是個人為了對這部分知識做一個整理和系統的輸出而編輯成的,在此鄭重地向本文所引用文章的...
    SOMCENT閱讀 13,110評論 6 174
  • 1.OkHttp源碼解析(一):OKHttp初階2 OkHttp源碼解析(二):OkHttp連接的"前戲"——HT...
    隔壁老李頭閱讀 20,936評論 24 176