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

騰訊Java后臺(tái)面試經(jīng)驗(yàn)總結(jié)

  發(fā)布時(shí)間:2020-01-15 14:15:43   作者:Hpsyche   我要評論
這篇文章主要介紹了騰訊Java后臺(tái)面試經(jīng)驗(yàn),總結(jié)分析了騰訊java面試中所涉及的計(jì)算機(jī)網(wǎng)絡(luò)、操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫相關(guān)概念、原理與常見面試知識(shí)點(diǎn),需要的朋友可以參考下

下午,突然收到騰訊的電話面試,心想:“不是3、4月份投的簡歷嗎,,,現(xiàn)在我還有機(jī)會(huì)被撈,管他,面了再說”
由于騰訊本身不是Java的主場,而且本身是一面,問的都是基礎(chǔ),所以面試基本沒有問到Java、JVM等詳細(xì)的知識(shí)。面試大體問題如下:

計(jì)算機(jī)網(wǎng)絡(luò)

  • 講下七層協(xié)議:講得還ok,大體說了下每層的功能等

  • 三次握手、四次揮手:由于之前認(rèn)真看過,所以講得也算流暢,詳細(xì)說了下過程
    面試官問:“四次揮手最后B給A請求的等待時(shí)間(是什么時(shí)間)”
    我:“emmmmmmmm,不知道”
    后查詢發(fā)現(xiàn)還是自己掌握得不好,其實(shí)答案也很簡單,如下:

    TCP關(guān)閉連接用四次握手來實(shí)現(xiàn),即A--->B Fin, B--->A ACK, B--->A Fin, A--->B ACK,為什么要這樣?
    A--->B Fin, B--->A ACK ,A屬于主動(dòng)關(guān)閉方,收到B的ACK后,A到B的方向連接關(guān)閉,即half shutown ,
    這時(shí)A不能再發(fā)送數(shù)據(jù)了。這種狀態(tài)下B還是可以單向發(fā)送數(shù)據(jù)的,B的數(shù)據(jù)發(fā)送完畢,也做關(guān)閉動(dòng)作了:B--->A Fin
    A--->B ACKB收到ACK,關(guān)閉連接。但是A無法知道ACK是否已經(jīng)到達(dá)B,于是開始等待?
    等待什么呢?假如ACK沒有到達(dá)B,B會(huì)為FIN這個(gè)消息超時(shí)重傳 timeout retransmit ,
    那如果A等待時(shí)間足夠,又再次收到FIN消息,說明剛才A返回的ACK沒有到達(dá)B,于是再發(fā)送ACK,
    直到在足夠的時(shí)間內(nèi)沒有收到FIN,說明ACK成功到達(dá)。
    這個(gè)等待時(shí)間至少是:B的timeout + FIN的傳輸時(shí)間,為了保證可靠,采用更加保守的等待時(shí)間2MSL。

    按照《趣談網(wǎng)絡(luò)協(xié)議》的形象說法:
    斷開的時(shí)候,我們可以看到,當(dāng) A 說“不玩了”,就進(jìn)入 FIN_WAIT_1 的狀態(tài),B 收到“A 不玩”的消息后,發(fā)送知道了,就進(jìn)入 CLOSE_WAIT 的狀態(tài)。
    A 收到“B 說知道了”,就進(jìn)入 FIN_WAIT_2 的狀態(tài),如果這個(gè)時(shí)候 B 直接跑路,則 A 將永遠(yuǎn)在這個(gè)狀態(tài)。TCP 協(xié)議里面并沒有對這個(gè)狀態(tài)的處理,但是 Linux 有,可以調(diào)整 tcp_fin_timeout 這個(gè)參數(shù),設(shè)置一個(gè)超時(shí)時(shí)間。
    如果 B 沒有跑路,發(fā)送了“B 也不玩了”的請求到達(dá) A 時(shí),A 發(fā)送“知道 B 也不玩了”的 ACK 后,從FIN_WAIT_2 狀態(tài)結(jié)束,按說 A 可以跑路了,但是最后的這個(gè) ACK 萬一 B 收不到呢?則 B 會(huì)重新發(fā)一個(gè)“B 不玩了”,這個(gè)時(shí)候 A 已經(jīng)跑路了的話,B 就再也收不到 ACK 了,因而 TCP 協(xié)議要求 A 最后等待一段時(shí)間 TIME_WAIT,這個(gè)時(shí)間要足夠長,長到如果 B 沒收到 ACK 的話,“B 說不玩了”會(huì)重發(fā)的,A 會(huì)重新發(fā)一個(gè) ACK 并且足夠時(shí)間到達(dá) B。

  • https(大概說了下,但自我感覺講得不好)

  • 慢啟動(dòng)算法、滑動(dòng)窗口(之前看過,不過由于沒認(rèn)真看,且當(dāng)時(shí)腦子一短路,沒想起來是什么,回答面試官“忘了”的時(shí)候,我就知道自己涼了)
    https://github.com/Hpsyche/note/blob/master/計(jì)算機(jī)網(wǎng)絡(luò)/滑動(dòng)窗口.md

  • 一個(gè)請求報(bào)文包含了什么信息
    (請求方式(Get/Post) url 協(xié)議名 請求頭部 空行 請求體)

  • 響應(yīng)碼狀態(tài)有什么?
    200 204 206 301 302 303 304 400 404 500 501 503
    415(不支持的媒體類型,說錯(cuò)成了“514”,不過面試官?zèng)]發(fā)現(xiàn),或是沒有拆穿我)

操作系統(tǒng)

  • 線程及進(jìn)程區(qū)別:講得還ok
  • 查看CPU狀態(tài)命令:不懂
  • top命令:真不懂(一開始還聽成了tail)
  • 管道命令,只說了兩個(gè)
    查看進(jìn)程:ps -ef|grep
    查看端口占用情況:netstat -anp |grep 3306*
  • linux查看配置網(wǎng)絡(luò)的一些指令(我說:“只懂得ifconfig”)
  • 協(xié)程(說了下是“線程的更小單位,能夠進(jìn)一步提高效率什么的”,感覺自己還是了解得不清晰)
    https://github.com/Hpsyche/note/blob/master/操作系統(tǒng)/協(xié)程.md

數(shù)據(jù)結(jié)構(gòu)

數(shù)據(jù)結(jié)構(gòu)是面試使用最長的一個(gè)環(huán)節(jié)。。

  • 棧和隊(duì)列區(qū)別
  • hash原理
  • hash擴(kuò)容
  • 各種map區(qū)別
  • 紅黑樹特征
  • 為什么使用紅黑樹,相比AVL優(yōu)勢
  • 快排
  • 快排是穩(wěn)定排序嗎?(這個(gè)回答正確了,但是原因解釋錯(cuò)了)

    所謂排序的穩(wěn)定性,就是指在排序過程中,在對a關(guān)鍵字排序后會(huì)不會(huì)改變其他關(guān)鍵字的順序。
    自己都可以試試,在比較有相同關(guān)鍵字序列的情況下,穩(wěn)定的排序會(huì)將較早出現(xiàn)的元素排在前面,而不會(huì)是后面。
    比如:對(49,38,49,20,97,76)排序,就是不穩(wěn)定排序

  • 跳表
  • 鏈表+hash(這不知道是不是我聽錯(cuò)了,不過我真不知道能組成什么數(shù)據(jù)結(jié)構(gòu))
  • HashMap:如果樹深度太大,怎么改進(jìn)?(這個(gè)現(xiàn)在還不知道答案?取模分多樹?)

數(shù)據(jù)庫

  • 簡單講一下sql
  • 常用sql命令
  • InnoBD 與 MyISAM 兩者之間的對比

整體來說收獲不少,希望以后能有更多面試機(jī)會(huì)把,爭取能夠大四秋招上岸?。。。?!

相關(guān)文章

最新評論

电白县| 卢氏县| 枞阳县| 阿克苏市| 清涧县| 乌拉特前旗| 南通市| 宝山区| 克拉玛依市| 罗田县| 开封市| 连城县| 高安市| 措勤县| 云林县| 孝昌县| 伽师县| 龙胜| 卓尼县| 漯河市| 海阳市| 和田市| 永顺县| 额济纳旗| 陈巴尔虎旗| 桐城市| 弥渡县| 兴化市| 天长市| 巩留县| 剑川县| 清远市| 镇平县| 嘉义市| 长寿区| 句容市| 和静县| 连州市| 增城市| 石渠县| 嘉善县|