日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

蘑菇街Java后端一面復(fù)盤:緩存一致性、并發(fā)與JVM核心考點(diǎn)

蘑菇街Java后端一面復(fù)盤:緩存一致性、并發(fā)與JVM核心考點(diǎn) 2019年7月底我還在實(shí)驗(yàn)室啃《深入理解Java虛擬機(jī)》突然收到一個(gè)杭州座機(jī)打來(lái)的電話。接起來(lái)才知道是蘑菇街提前批的一面。說(shuō)實(shí)話當(dāng)時(shí)有點(diǎn)措手不及因?yàn)橥锻旰?jiǎn)歷才三天根本沒(méi)想過(guò)會(huì)這么快好在提前批本身就是臨時(shí)起意的機(jī)會(huì)能走到哪兒是哪兒。后來(lái)這一面面了將近一個(gè)小時(shí)問(wèn)的內(nèi)容不算偏但每一塊都問(wèn)得很細(xì)尤其是項(xiàng)目細(xì)節(jié)和Java基礎(chǔ)答得讓我印象深刻。這幾天陸續(xù)有學(xué)弟學(xué)妹問(wèn)我當(dāng)年提前批的情況干脆把這場(chǎng)蘑菇街一面完整復(fù)盤出來(lái)按面試問(wèn)題我的答案復(fù)盤點(diǎn)評(píng)的結(jié)構(gòu)寫希望能給準(zhǔn)備校招后端崗位的同學(xué)一些參考。1. 提前批的節(jié)奏與我的準(zhǔn)備狀態(tài)1.1 蘑菇街提前批的時(shí)間線回顧2019年的秋招比往年更早蘑菇街的提前批大概在7月中旬就開了。我當(dāng)時(shí)是通過(guò)實(shí)驗(yàn)室學(xué)長(zhǎng)內(nèi)推投的投遞的是Java后端開發(fā)崗位。內(nèi)推后的第三天接到面試電話約在當(dāng)天晚上七點(diǎn)電話面試。時(shí)間線大概是這個(gè)節(jié)奏7月中旬內(nèi)推投遞簡(jiǎn)歷投遞后第3天接到一面電話邀約一面電話面試約55分鐘面試形式電話溝通沒(méi)有共享屏幕手撕代碼通過(guò)口述思路事后發(fā)代碼鏈接完成這里提醒一句蘑菇街當(dāng)時(shí)提前批和正式批是不沖突的提前批掛了還可以走正式批。所以不要因?yàn)闇?zhǔn)備不充分就放棄投遞提前批等于多了一次面試機(jī)會(huì)拼的就是一個(gè)早。1.2 我當(dāng)時(shí)的復(fù)習(xí)重心接到面試電話之前我的復(fù)習(xí)已經(jīng)持續(xù)了大概一個(gè)月。因?yàn)槟繕?biāo)是后端開發(fā)崗所以復(fù)習(xí)重心分配得很明確刷題劍指Offer全部過(guò)了一遍L(zhǎng)eetCode按高頻題刷了大概100道重點(diǎn)放在鏈表、二叉樹、動(dòng)態(tài)規(guī)劃三類。Java基礎(chǔ)HashMap、ArrayList源碼級(jí)理解JVM內(nèi)存模型和GC整理成腦圖。并發(fā)編程synchronized、ReentrantLock、volatile、線程池把原理和對(duì)比都寫了一遍。數(shù)據(jù)庫(kù)MySQL索引底層、事務(wù)隔離級(jí)別、MVCC、常見(jiàn)索引失效場(chǎng)景。中間件Redis的數(shù)據(jù)結(jié)構(gòu)、持久化、緩存穿透/擊穿/雪崩。面的過(guò)程中我發(fā)現(xiàn)這種按主線復(fù)習(xí)臨時(shí)補(bǔ)充的策略是對(duì)的。蘑菇街一面并沒(méi)有問(wèn)太偏門的內(nèi)容全部落在Java后端開發(fā)的核心范圍內(nèi)。換句話說(shuō)只要認(rèn)真準(zhǔn)備過(guò)上述內(nèi)容一面基本都能應(yīng)對(duì)。2. 一面全程從自我介紹到項(xiàng)目深挖2.1 開場(chǎng)定調(diào)自我介紹怎么說(shuō)電話接通后面試官簡(jiǎn)單確認(rèn)了身份直接讓我自我介紹。我的回答大概是這樣面試官您好我是XX大學(xué)軟件工程專業(yè)2020屆研究生研究生期間主要做Java后端開發(fā)方向。對(duì)Java基礎(chǔ)、并發(fā)編程、JVM和MySQL底層原理有過(guò)系統(tǒng)的學(xué)習(xí)平時(shí)用Spring Boot和MyBatis做項(xiàng)目。最近主要做了兩個(gè)項(xiàng)目一個(gè)是基于微服務(wù)的校園秒殺系統(tǒng)另一個(gè)是實(shí)驗(yàn)室的設(shè)備借用管理平臺(tái)。其中秒殺系統(tǒng)涉及到高并發(fā)下的庫(kù)存扣減和緩存一致性設(shè)計(jì)是比較能聊的一個(gè)項(xiàng)目。復(fù)盤時(shí)回頭看這段自我介紹其實(shí)埋了兩個(gè)鉤子一是主動(dòng)把話題引到并發(fā)和緩存二是強(qiáng)調(diào)秒殺項(xiàng)目可以深聊。面試官后續(xù)果然順著項(xiàng)目問(wèn)了很多這比被動(dòng)等他隨便問(wèn)要舒服得多。我的經(jīng)驗(yàn)是自我介紹不用太長(zhǎng)但一定要有意識(shí)地引導(dǎo)面試官去問(wèn)你準(zhǔn)備最充分的部分。2.2 項(xiàng)目深挖秒殺系統(tǒng)的緩存一致性設(shè)計(jì)面試官聽完自我介紹沒(méi)有問(wèn)實(shí)驗(yàn)室管理平臺(tái)直接問(wèn)秒殺系統(tǒng)你剛才說(shuō)秒殺系統(tǒng)涉及高并發(fā)說(shuō)說(shuō)最核心的難點(diǎn)你怎么解決的我當(dāng)時(shí)把項(xiàng)目里的技術(shù)方案完整講了一遍。這里還原關(guān)鍵對(duì)話。面試官庫(kù)存扣減怎么設(shè)計(jì)的我最開始是直接操作數(shù)據(jù)庫(kù)每次下單都update庫(kù)存表并且加for update鎖。壓測(cè)的時(shí)候發(fā)現(xiàn)連接池滿得非??霶PS頂?shù)綆装倬蜕喜蝗チ?。后?lái)改成兩層設(shè)計(jì)——先把庫(kù)存預(yù)熱到Redis用Redis的decr命令做庫(kù)存扣減扣減成功后再把下單請(qǐng)求丟進(jìn)RabbitMQ由消費(fèi)者異步創(chuàng)建訂單。面試官為什么選Redis的decr而不是數(shù)據(jù)庫(kù)悲觀鎖我數(shù)據(jù)庫(kù)的for update本質(zhì)上是把一行記錄鎖住并發(fā)能力受限于數(shù)據(jù)庫(kù)的連接數(shù)和鎖等待時(shí)間。而Redis是單線程模型decr命令天然是原子的單機(jī)QPS可以支撐到十萬(wàn)級(jí)別比數(shù)據(jù)庫(kù)判斷庫(kù)存再扣減要快得多。另外這里還有一個(gè)細(xì)節(jié)用戶維度我們用了Redis setnx做一人一單限制防止同一用戶秒殺多件。面試官緩存和數(shù)據(jù)庫(kù)的一致性怎么保證我用的Cache Aside Pattern也就是先更新數(shù)據(jù)庫(kù)再刪除緩存。讀到的時(shí)候如果緩存miss再?gòu)臄?shù)據(jù)庫(kù)讀出來(lái)回填緩存。面試官為什么是刪除緩存而不是更新緩存我更新緩存需要算出最新的數(shù)據(jù)再寫進(jìn)去成本比刪除高而且并發(fā)場(chǎng)景下兩個(gè)線程交替更新緩存和數(shù)據(jù)庫(kù)很容易導(dǎo)致緩存里終態(tài)錯(cuò)誤。刪除緩存成本低即使刪早了下一次讀的時(shí)候重新從數(shù)據(jù)庫(kù)加載就行邏輯簡(jiǎn)單可靠。面試官那刪除緩存失敗怎么辦我我們做了一個(gè)兜底緩存key設(shè)置了過(guò)期時(shí)間就算刪除失敗最終也會(huì)過(guò)期不會(huì)永久不一致。同時(shí)我們把刪除失敗的key寫入本地消息表通過(guò)RabbitMQ延遲隊(duì)列重試刪除。更完善的方案是訂閱MySQL的binlog用canal解析出數(shù)據(jù)變更事件再異步刪除對(duì)應(yīng)緩存這樣完全不依賴業(yè)務(wù)代碼手動(dòng)刪除。面試官對(duì)這個(gè)回答沒(méi)有再追問(wèn)點(diǎn)了下頭就切到下一題。復(fù)盤下來(lái)項(xiàng)目這塊他能問(wèn)到的點(diǎn)基本都被我提前準(zhǔn)備過(guò)。這里最大的心得是項(xiàng)目深挖其實(shí)不是考你做得多牛而是考你對(duì)方案的理解深度。光說(shuō)用了Redis不夠得說(shuō)得出來(lái)為什么不用數(shù)據(jù)庫(kù)鎖Redis為什么合適刪緩存失敗會(huì)有什么問(wèn)題怎么補(bǔ)救。把這些問(wèn)題想通了項(xiàng)目環(huán)節(jié)基本穩(wěn)了。2.3 面試官追問(wèn)的意圖后來(lái)想想面試官在每個(gè)追問(wèn)背后其實(shí)都在考察一件事項(xiàng)目到底是不是你自己做的你有沒(méi)有真正想過(guò)方案背后的取舍。比如緩存一致性問(wèn)題如果只是背過(guò)先更新數(shù)據(jù)庫(kù)再刪除緩存這句話被問(wèn)失敗怎么辦就露餡了。所以做項(xiàng)目的時(shí)候不能只看博客里怎么寫一定要親手把方案跑通把異常場(chǎng)景都模擬一遍。3. 基礎(chǔ)題問(wèn)答實(shí)錄Java并發(fā)、JVM、MySQL項(xiàng)目聊了大概15分鐘之后面試官話鋒一轉(zhuǎn)進(jìn)入基礎(chǔ)題環(huán)節(jié)。速度明顯加快基本是我問(wèn)你答答完就下一題的節(jié)奏。3.1 Java集合與并發(fā)面試官HashMap的底層結(jié)構(gòu)是什么樣的JDK 1.7到1.8有哪些變化我HashMap底層是數(shù)組加鏈表JDK 1.8之后引入了紅黑樹。當(dāng)鏈表長(zhǎng)度超過(guò)8同時(shí)數(shù)組容量達(dá)到64鏈表會(huì)轉(zhuǎn)為紅黑樹主要是為了處理hash沖突嚴(yán)重時(shí)鏈表過(guò)長(zhǎng)、查詢效率從O(n)惡化的問(wèn)題。擴(kuò)容方面默認(rèn)容量16負(fù)載因子0.75也就是元素個(gè)數(shù)超過(guò)閾值12時(shí)就擴(kuò)容到原來(lái)的兩倍。JDK 1.8還有一個(gè)重要的優(yōu)化擴(kuò)容時(shí)不用重新計(jì)算hash而是看原h(huán)ash值新增的那一位是0還是10就留在原位置1就放到原位置加舊容量的位置。另外1.7是頭插法并發(fā)擴(kuò)容可能形成環(huán)形鏈表1.8改成尾插法避免了這個(gè)問(wèn)題但HashMap本身線程不安全并發(fā)場(chǎng)景還是要用ConcurrentHashMap。面試官ConcurrentHashMap底層是怎么做線程安全的我1.7的時(shí)候是分段鎖內(nèi)部維護(hù)多個(gè)Segment每個(gè)Segment繼承ReentrantLock不同段之間可以并行操作。1.8放棄了分段鎖改用synchronized加CAS鎖的粒度是桶也就是數(shù)組的每個(gè)槽位只有發(fā)生hash沖突的桶才會(huì)鎖住并發(fā)度更高。擴(kuò)容時(shí)支持多線程協(xié)助遷移把一個(gè)大數(shù)組拆成多個(gè)任務(wù)分給不同線程去做。面試官volatile和synchronized有什么區(qū)別我volatile只保證可見(jiàn)性和有序性它會(huì)強(qiáng)制把修改立即寫回主內(nèi)存同時(shí)通過(guò)內(nèi)存屏障禁止指令重排序但它不保證原子性。synchronized保證原子性、可見(jiàn)性和有序性。所以像i這種操作光用volatile是不行的。volatile典型的應(yīng)用場(chǎng)景是狀態(tài)標(biāo)志位還有單例模式里的Double Check用volatile修飾instance防止JVM指令重排導(dǎo)致拿到未初始化完成的對(duì)象。面試官synchronized和ReentrantLock怎么選我synchronized是JVM層面的鎖ReentrantLock是JDK提供的API。ReentrantLock多了三個(gè)能力可以響應(yīng)中斷、可以設(shè)置超時(shí)時(shí)間、可以創(chuàng)建公平鎖并且支持多個(gè)Condition條件隊(duì)列。JDK 1.6之后synchronized做了偏向鎖、輕量級(jí)鎖的優(yōu)化性能差距已經(jīng)很小。如果只是簡(jiǎn)單的同步需求synchronized就夠了代碼更簡(jiǎn)潔如果需要超時(shí)等待、可中斷、公平性控制就選ReentrantLock。這里有個(gè)插曲面試官對(duì)公平鎖這個(gè)點(diǎn)追問(wèn)了一句公平鎖的底層怎么實(shí)現(xiàn)的我當(dāng)時(shí)只說(shuō)了一個(gè)大概ReentrantLock內(nèi)部維護(hù)了一個(gè)等待隊(duì)列公平鎖會(huì)檢查隊(duì)列里有沒(méi)有排在前面的線程有就先讓前面的人獲取鎖。面試官?zèng)]再追問(wèn)。后來(lái)我仔細(xì)研究了源碼AQS里是通過(guò)hasQueuedPredecessors()方法判斷當(dāng)前線程是不是隊(duì)列頭部只有真正排在頭部的線程才有資格搶鎖。3.2 JVM內(nèi)存與GC面試官JVM運(yùn)行時(shí)數(shù)據(jù)區(qū)域有哪些哪些線程共享哪些線程私有我整體分五大塊。程序計(jì)數(shù)器、虛擬機(jī)棧、本地方法棧是線程私有的堆和方法區(qū)是線程共享的。JDK 8之后方法區(qū)被元空間取代元空間使用本地內(nèi)存不再受JVM堆內(nèi)存上限限制。對(duì)象實(shí)例和數(shù)組主要分配在堆上棧上分配是JIT在逃逸分析之后做的優(yōu)化不是常規(guī)路徑。面試官垃圾回收怎么判斷對(duì)象可以回收我主流用的是可達(dá)性分析算法。從一組稱為GC Roots的根對(duì)象出發(fā)沿著引用鏈往下找沒(méi)有被引用鏈連接的對(duì)象就判定為可回收。GC Roots包括虛擬機(jī)棧中棧幀里的局部變量引用的對(duì)象、靜態(tài)變量引用的對(duì)象、常量池引用的對(duì)象、JNI引用的對(duì)象、被synchronized持有的對(duì)象。引用計(jì)數(shù)法因?yàn)闊o(wú)法解決循環(huán)引用的問(wèn)題現(xiàn)在基本不會(huì)單獨(dú)用。面試官CMS和G1有什么區(qū)別我CMS是老年代垃圾收集器目標(biāo)是低停頓用的是標(biāo)記-清除算法整個(gè)過(guò)程分初始標(biāo)記、并發(fā)標(biāo)記、重新標(biāo)記、并發(fā)清除四個(gè)階段其中只有初始標(biāo)記和重新標(biāo)記需要STW。缺點(diǎn)也很明顯標(biāo)記-清除會(huì)產(chǎn)生內(nèi)存碎片并發(fā)階段會(huì)占用CPU資源而且它無(wú)法處理浮動(dòng)垃圾。G1則是把整個(gè)堆劃分成多個(gè)大小相等的Region既可以回收新生代又可以回收老年代通過(guò)維護(hù)每個(gè)Region的回收價(jià)值和回收成本做到可預(yù)測(cè)的停頓時(shí)間。G1在Java 9之后成為默認(rèn)垃圾收集器它最大的特點(diǎn)是可以在回收過(guò)程中把Region里的存活對(duì)象復(fù)制到空閑Region里本質(zhì)上是標(biāo)記-復(fù)制不會(huì)產(chǎn)生碎片。JVM這塊我明顯感覺(jué)面試官比較滿意因?yàn)樗谖掖鹜曛笳f(shuō)了一句JVM底子還可以。這可能是整場(chǎng)面試中我最舒展的一段。3.3 MySQL索引與事務(wù)面試官InnoDB的索引為什么用B樹我B樹有幾個(gè)特點(diǎn)比較適合數(shù)據(jù)庫(kù)場(chǎng)景。第一非葉子節(jié)點(diǎn)只存索引鍵值不存數(shù)據(jù)所以每個(gè)節(jié)點(diǎn)能存放更多的索引項(xiàng)樹的高度低一般三層就能存上千萬(wàn)條數(shù)據(jù)也就是最多三次磁盤IO就能定位到葉子節(jié)點(diǎn)。第二葉子節(jié)點(diǎn)之間有雙向指針串聯(lián)天然支持范圍查詢和排序B樹就需要回溯父節(jié)點(diǎn)才能做范圍查詢。第三哈希索引雖然單點(diǎn)查詢快但不支持范圍紅黑樹和二叉樹在數(shù)據(jù)量大的時(shí)候樹太高磁盤IO次數(shù)太多了。面試官聯(lián)合索引遵循什么原則哪些情況會(huì)導(dǎo)致索引失效我聯(lián)合索引遵循最左前綴原則。比如建了(a, b, c)的聯(lián)合索引查詢條件里有a或者a、b或者a、b、c才能命中。失效場(chǎng)景常見(jiàn)的有對(duì)索引列做了計(jì)算、函數(shù)操作、隱式類型轉(zhuǎn)換使用like時(shí)前面帶百分號(hào)比如like %xx使用or連接非索引列聯(lián)合索引中不滿足最左前綴條件。面試官M(fèi)ySQL默認(rèn)的隔離級(jí)別是什么MVCC是怎么實(shí)現(xiàn)的我默認(rèn)是可重復(fù)讀RR。MVCC是InnoDB實(shí)現(xiàn)一致性讀的關(guān)鍵機(jī)制核心由三部分組成undo log版本鏈、read view、隱藏的trx_id字段。每行記錄上都有最近修改它的事務(wù)IDundo log記錄了歷史版本形成一個(gè)版本鏈。查詢時(shí)生成read viewread view里保存了活躍事務(wù)列表通過(guò)比較事務(wù)ID判斷當(dāng)前查詢能看到哪個(gè)版本。區(qū)別在于讀已提交RC是每條語(yǔ)句生成一個(gè)新的read view可重復(fù)讀RR是第一次快照讀的時(shí)候生成后續(xù)復(fù)用同一個(gè)read view所以同一個(gè)事務(wù)里兩次查詢結(jié)果一致。面試官RR級(jí)別下怎么防止幻讀我主要通過(guò)兩個(gè)機(jī)制。一個(gè)是MVCC的快照讀第一次讀的時(shí)候生成read view之后復(fù)用即使別的事務(wù)插入了新數(shù)據(jù)當(dāng)前事務(wù)看不到天然避免了幻讀。另一個(gè)是當(dāng)前讀比如select ... for update需要通過(guò)間隙鎖gap lock和臨鍵鎖next-key lock來(lái)實(shí)現(xiàn)。間隙鎖鎖的是索引記錄之間的間隙讓其他事務(wù)無(wú)法在間隙內(nèi)插入新的記錄從而防止幻讀?;A(chǔ)題環(huán)節(jié)到這里大概持續(xù)了25分鐘。面試官把Java、JVM、MySQL各自挑了最核心的幾個(gè)點(diǎn)來(lái)問(wèn)沒(méi)有一上來(lái)就壓八股。給我的感覺(jué)是蘑菇街一面更看重能不能把原理講清楚而不是背了多少面試題。4. 計(jì)算機(jī)網(wǎng)絡(luò)與中間件快問(wèn)快答基礎(chǔ)題之后面試官開始快問(wèn)快答節(jié)奏明顯加快問(wèn)題更零散像在掃知識(shí)點(diǎn)。4.1 TCP與HTTP細(xì)節(jié)面試官TCP三次握手為什么不是兩次我如果只需要兩次握手可能出現(xiàn)這種情況客戶端發(fā)送的SYN報(bào)文在網(wǎng)絡(luò)中滯留了很久客戶端認(rèn)為它超時(shí)了沒(méi)有收到確認(rèn)所以重發(fā)了SYN這一次正常完成了連接。但滯留在網(wǎng)絡(luò)中的那個(gè)舊SYN報(bào)文過(guò)了很久又到達(dá)了服務(wù)端服務(wù)端以為是一個(gè)新連接于是返回SYNACK給客戶端。如果只有兩次握手服務(wù)端這時(shí)就認(rèn)為連接建立成功了會(huì)一直等待客戶端發(fā)送數(shù)據(jù)白白浪費(fèi)服務(wù)端的資源。而三次握手中客戶端收到服務(wù)端的SYNACK之后并不會(huì)立即認(rèn)為連接建立而是要再回一個(gè)ACK。如果服務(wù)端收到的是舊SYN的響應(yīng)客戶端會(huì)發(fā)現(xiàn)這個(gè)連接不是自己期望的就不會(huì)回ACK服務(wù)端自然也不會(huì)建立連接。面試官四次揮手里TIME_WAIT為什么要等2MSL我兩個(gè)原因。第一確保最后一個(gè)ACK報(bào)文能夠到達(dá)對(duì)端如果ACK丟了對(duì)端會(huì)超時(shí)重傳FIN如果此時(shí)連接已經(jīng)關(guān)閉就沒(méi)有辦法重發(fā)ACK了等一個(gè)2MSL可以保證ACK重傳的窗口足夠。第二經(jīng)過(guò)2MSL的時(shí)間能讓本次連接產(chǎn)生的所有舊報(bào)文都在網(wǎng)絡(luò)中消失避免它們出現(xiàn)在未來(lái)某個(gè)相同的四元組連接里造成數(shù)據(jù)混亂。面試官HTTPS的握手過(guò)程了解嗎我HTTPS本質(zhì)上是HTTP over TLS握手過(guò)程大致分幾步客戶端發(fā)起ClientHello攜帶支持的TLS版本、加密套件列表和隨機(jī)數(shù)服務(wù)端返回ServerHello選定加密套件和服務(wù)端隨機(jī)數(shù)同時(shí)下發(fā)證書客戶端驗(yàn)證證書合法性然后生成預(yù)主密鑰用服務(wù)端證書里的公鑰加密發(fā)過(guò)去服務(wù)端用自己的私鑰解密出預(yù)主密鑰雙方通過(guò)三個(gè)隨機(jī)數(shù)協(xié)商出會(huì)話密鑰。之后雙方發(fā)送Finished消息確認(rèn)握手成功后續(xù)應(yīng)用層數(shù)據(jù)全部走對(duì)稱加密。TLS 1.3進(jìn)一步簡(jiǎn)化了握手把以往的兩個(gè)往返優(yōu)化成一個(gè)往返。面試官HTTP常見(jiàn)的502和504有什么區(qū)別我502 Bad Gateway表示網(wǎng)關(guān)或代理服務(wù)器從上游服務(wù)器收到了無(wú)效響應(yīng)簡(jiǎn)單說(shuō)就是上游服務(wù)器掛了或者返回了非法內(nèi)容。504 Gateway Timeout表示網(wǎng)關(guān)在指定時(shí)間內(nèi)沒(méi)有等到上游服務(wù)器返回響應(yīng)也就是上游處理超時(shí)了。實(shí)際排查中502更多是后端服務(wù)進(jìn)程崩潰或者重啟504更多是后端處理得太慢或線程池被打滿。4.2 Redis三大經(jīng)典問(wèn)題面試官Redis緩存穿透、擊穿、雪崩分別是什么怎么解決我穿透是查詢一個(gè)不存在的key緩存里沒(méi)有數(shù)據(jù)庫(kù)里也沒(méi)有請(qǐng)求直接打到數(shù)據(jù)庫(kù)惡意攻擊時(shí)能把數(shù)據(jù)庫(kù)打垮。解決方式是布隆過(guò)濾器先用bitmap把所有可能存在的主鍵存進(jìn)去查不到的直接攔截或者對(duì)空結(jié)果也做緩存設(shè)置一個(gè)較短的過(guò)期時(shí)間。擊穿是某一個(gè)熱點(diǎn)key在過(guò)期瞬間大量請(qǐng)求同時(shí)打到數(shù)據(jù)庫(kù)。解決方式是熱點(diǎn)key不設(shè)置過(guò)期時(shí)間或者過(guò)期時(shí)間加一個(gè)隨機(jī)值再或者用互斥鎖讓同一個(gè)key只有一個(gè)請(qǐng)求去數(shù)據(jù)庫(kù)回源。雪崩是大量key在同一時(shí)間段集體過(guò)期導(dǎo)致流量瞬間打到數(shù)據(jù)庫(kù)。解決方式有過(guò)期時(shí)間增加隨機(jī)因子避免集中在同一時(shí)刻熱點(diǎn)數(shù)據(jù)不設(shè)置過(guò)期時(shí)間由后臺(tái)任務(wù)定時(shí)更新還可以做熔斷降級(jí)數(shù)據(jù)庫(kù)壓力大的時(shí)候直接返回默認(rèn)值。面試官RDB和AOF怎么選我RDB是定時(shí)的全量快照文件緊湊恢復(fù)速度快適合做備份和主從同步但故障時(shí)可能丟失最后一次快照之后的數(shù)據(jù)。AOF記錄的是每一個(gè)寫命令數(shù)據(jù)安全性更高默認(rèn)everysec配置最多丟一秒數(shù)據(jù)但AOF文件體積更大恢復(fù)速度慢。生產(chǎn)環(huán)境通常兩個(gè)都開AOF保證數(shù)據(jù)安全RDB用于快速恢復(fù)和備份。面試官Redis實(shí)現(xiàn)分布式鎖要注意什么我最基礎(chǔ)的方式是SETNX加過(guò)期時(shí)間set key value NX PX 30000保證原子性。但要注意value必須是一個(gè)唯一標(biāo)識(shí)釋放鎖的時(shí)候要先get判斷是不是自己的鎖再delget和del要保證原子性通常用Lua腳本執(zhí)行。更完整的做法是用Redisson它有一個(gè)看門狗機(jī)制會(huì)對(duì)鎖自動(dòng)續(xù)期防止業(yè)務(wù)還沒(méi)執(zhí)行完鎖就過(guò)期被其他線程拿走了。這套方案里Redis主從切換時(shí)可能會(huì)丟鎖所以嚴(yán)格要求時(shí)要用RedLock但實(shí)際業(yè)務(wù)里用得不多??靻?wèn)快答階段明顯是在掃盲區(qū)問(wèn)題之間沒(méi)有太多關(guān)聯(lián)覆蓋范圍廣但深度不大。我的體感是這部分的目的是快速判斷候選人的知識(shí)面夠不夠?qū)挾皇窃谀骋粋€(gè)點(diǎn)上死磕。所以平時(shí)積累很重要至少每個(gè)常見(jiàn)知識(shí)點(diǎn)都要能說(shuō)出個(gè)一二三來(lái)。5. 手撕算法鏈表中環(huán)的入口節(jié)點(diǎn)基礎(chǔ)題問(wèn)完面試官說(shuō)最后寫一道題吧。當(dāng)時(shí)電話面試不方便共享屏幕就讓我口述思路然后發(fā)一段代碼到指定的鏈接里。5.1 題目分析與快慢指針?biāo)悸奉}目是經(jīng)典題給定一個(gè)鏈表如果它包含環(huán)找出環(huán)的入口節(jié)點(diǎn)沒(méi)有環(huán)就返回null。我聽到題目第一反應(yīng)是這題有套路分兩步第一步判斷是否有環(huán)。用快慢指針slow每次走一步fast每次走兩步兩個(gè)指針都從頭節(jié)點(diǎn)出發(fā)。如果鏈表中存在環(huán)那么快指針最終會(huì)追上慢指針在環(huán)內(nèi)相遇如果快指針達(dá)到了鏈表尾部說(shuō)明沒(méi)有環(huán)。第二步找到環(huán)的入口。相遇之后讓slow回到頭節(jié)點(diǎn)fast留在相遇點(diǎn)然后兩個(gè)指針都保持每次走一步的速度繼續(xù)走下一次相遇的節(jié)點(diǎn)就是環(huán)的入口。但光記住結(jié)論不夠面試官多半會(huì)追問(wèn)為什么。所以當(dāng)時(shí)我把推導(dǎo)也講了一遍假設(shè)從頭節(jié)點(diǎn)到環(huán)入口的距離是a環(huán)入口到第一次相遇點(diǎn)的距離是b相遇點(diǎn)到環(huán)入口的距離是c那么第一次相遇時(shí)慢指針走了ab快指針走了abn(bc)。因?yàn)榭熘羔標(biāo)俣仁锹羔樀膬杀端?(ab)abn(bc)整理一下得到a (n-1)(bc)c。也就是說(shuō)從頭節(jié)點(diǎn)重新出發(fā)的slow指針走距離a的同時(shí)從相遇點(diǎn)重新出發(fā)的fast指針會(huì)繞環(huán)走n-1圈再走c兩者恰好都在環(huán)入口位置碰頭。5.2 代碼實(shí)現(xiàn)與邊界條件我用Java快速寫出了實(shí)現(xiàn)public class ListNode { int val; ListNode next; ListNode(int x) { val x; } } public class Solution { public ListNode detectCycle(ListNode head) { if (head null || head.next null) { return null; } ListNode slow head; ListNode fast head; while (fast ! null fast.next ! null) { slow slow.next; fast fast.next.next; if (slow fast) { break; } } if (fast null || fast.next null) { return null; } slow head; while (slow ! fast) { slow slow.next; fast fast.next; } return slow; } }寫完之后我主動(dòng)把邊界條件說(shuō)了一遍空鏈表和只有一個(gè)節(jié)點(diǎn)的情況直接返回null。鏈表沒(méi)有環(huán)fast會(huì)先到尾部循環(huán)自然結(jié)束。鏈表整個(gè)就是一個(gè)環(huán)也就是尾節(jié)點(diǎn)指向頭節(jié)點(diǎn)slow回到頭節(jié)點(diǎn)后第一次判斷就與fast相等直接返回頭節(jié)點(diǎn)邏輯是成立的。環(huán)在鏈表中間慢指針回到頭節(jié)點(diǎn)后走a步到入口另一個(gè)從相遇點(diǎn)出發(fā)經(jīng)過(guò)c步到達(dá)入口兩者同步到達(dá)。5.3 面試官加試為什么快指針每次走兩步果然面試官接著問(wèn)為什么快指針每次走兩步走三步行不行我心里慶幸之前看過(guò)這個(gè)問(wèn)題的分析?;卮鹚悸肥强熘羔樧邇刹降哪康氖潜WC它在慢指針進(jìn)入環(huán)之后一定能追上慢指針??紤]慢指針剛進(jìn)入環(huán)的時(shí)候快指針已經(jīng)在環(huán)里了兩個(gè)指針之間的相對(duì)距離最多是環(huán)長(zhǎng)減1。每次快指針比慢指針多走一步這個(gè)相對(duì)距離就會(huì)縮小1所以最多走環(huán)長(zhǎng)減1步就一定能追上時(shí)間復(fù)雜度是O(n)是最優(yōu)步長(zhǎng)。如果快指針走三步相對(duì)距離每次縮小2那么當(dāng)初始相對(duì)距離是偶數(shù)時(shí)能追上是奇數(shù)時(shí)就可能錯(cuò)過(guò)。極端情況下快指針會(huì)一直跳過(guò)慢指針?biāo)诘奈恢迷斐捎啦慌雒娴那闆r。當(dāng)然實(shí)際中可能會(huì)因?yàn)榄h(huán)的形狀不同而碰巧追上但無(wú)法保證一定有解。所以兩步是既能保證追上又不會(huì)浪費(fèi)額外時(shí)間的穩(wěn)妥選擇。算法題到這里結(jié)束。面試官簡(jiǎn)單評(píng)價(jià)了一句思路清晰然后問(wèn)我有沒(méi)有想問(wèn)他的問(wèn)題。這里我也說(shuō)一個(gè)小經(jīng)驗(yàn)算法題不光要把代碼寫出來(lái)最好能主動(dòng)說(shuō)明復(fù)雜度和邊界條件。很多面試官不會(huì)明確要求你說(shuō)但你說(shuō)了他會(huì)下意識(shí)把你歸類到基礎(chǔ)扎實(shí)的那一批。這道題的時(shí)間復(fù)雜度是O(n)空間復(fù)雜度是O(1)我也一并說(shuō)了。6. 面后復(fù)盤與經(jīng)驗(yàn)總結(jié)6.1 我回答得不夠好的地方這一面整體感覺(jué)不差但復(fù)盤時(shí)我給自己挑出了幾個(gè)明顯的問(wèn)題第一線程池參數(shù)當(dāng)時(shí)答得不全。面試官問(wèn)線程池的核心參數(shù)有哪些我答了corePoolSize和maxPoolSize但把keepAliveTime、workQueue、ThreadFactory這幾項(xiàng)漏了還是面試官引導(dǎo)了一下才補(bǔ)齊。這個(gè)屬于基礎(chǔ)中的基礎(chǔ)答不全挺不應(yīng)該的。后來(lái)我把ThreadPoolExecutor的七個(gè)參數(shù)核心線程數(shù)、最大線程數(shù)、空閑存活時(shí)間、時(shí)間單位、工作隊(duì)列、線程工廠、拒絕策略整理成了一張表每天默寫一遍之后再?zèng)]有出現(xiàn)過(guò)卡頓。第二反問(wèn)環(huán)節(jié)問(wèn)得太淺。我只問(wèn)了一句團(tuán)隊(duì)目前主要用什么技術(shù)棧面試官簡(jiǎn)單回答完就結(jié)束了。后來(lái)跟已經(jīng)拿到offer的學(xué)長(zhǎng)聊才知道好的反問(wèn)是能加分的。比如可以問(wèn)團(tuán)隊(duì)目前更多在攻堅(jiān)哪塊業(yè)務(wù)候選人入職后一般從什么模塊入手您覺(jué)得這個(gè)崗位更看重候選人的哪方面能力這能體現(xiàn)你對(duì)崗位的思考深度。當(dāng)然這一面本身已經(jīng)過(guò)去了這個(gè)經(jīng)驗(yàn)主要是在后面的面試?yán)镉蒙狭?。第三?xiàng)目里有一個(gè)細(xì)節(jié)我沒(méi)講透。面試官問(wèn)過(guò)為什么訂單創(chuàng)建不直接同步執(zhí)行而是走M(jìn)Q異步我當(dāng)時(shí)只說(shuō)為了削峰填谷但沒(méi)有說(shuō)清楚異步之后怎么保證訂單和庫(kù)存的一致性。實(shí)際上我們當(dāng)時(shí)的方案是MQ消費(fèi)者里做庫(kù)存二次校驗(yàn)如果庫(kù)存扣減成功但訂單創(chuàng)建失敗會(huì)發(fā)一條消息到死信隊(duì)列由定時(shí)任務(wù)做狀態(tài)對(duì)賬。如果當(dāng)時(shí)把這個(gè)對(duì)賬機(jī)制講出來(lái)項(xiàng)目這塊會(huì)更加完整。6.2 蘑菇街一面的考察特點(diǎn)如果把蘑菇街一面和同期面過(guò)的其他公司對(duì)比我的感受是技術(shù)范圍中規(guī)中矩不偏門。核心還是Java基礎(chǔ)、JVM、MySQL、Redis、算法這些后端通用知識(shí)。項(xiàng)目深挖比想象中要細(xì)。會(huì)在緩存一致性、超賣怎么解決這類問(wèn)題上連續(xù)追問(wèn)直到確定你是真的理解而不是背了個(gè)八股。算法題難度適中。沒(méi)有出hard題劍指Offer和LeetCode hot 100覆蓋到的程度就夠用了。面試官整體比較溫和會(huì)有一點(diǎn)引導(dǎo)性。你卡住的時(shí)候他會(huì)換個(gè)角度問(wèn)而不是冷場(chǎng)讓你尷尬。這里也列一個(gè)表格方便大家對(duì)照我當(dāng)時(shí)整理的考察側(cè)重點(diǎn)考察模塊涉及知識(shí)點(diǎn)準(zhǔn)備優(yōu)先級(jí)項(xiàng)目深挖緩存一致性、超賣、異步解耦、消息可靠性最高Java基礎(chǔ)HashMap、ConcurrentHashMap、volatile、鎖高JVM內(nèi)存區(qū)域、GC Roots、CMS/G1高M(jìn)ySQLB樹、索引失效、MVCC、間隙鎖高計(jì)算機(jī)網(wǎng)絡(luò)TCP握手揮手、HTTPS、HTTP狀態(tài)碼中中間件Redis穿透/擊穿/雪崩、分布式鎖中算法鏈表、二叉樹、雙指針高6.3 寫在最后的心得這場(chǎng)面試最終的結(jié)果是過(guò)了后續(xù)進(jìn)入了二面。但說(shuō)實(shí)話一面給我留下的最深印象不在結(jié)果而在于它讓我第一次真正體會(huì)到準(zhǔn)備充分的面試是很有掌控感的。項(xiàng)目、基礎(chǔ)題、算法三個(gè)環(huán)節(jié)節(jié)奏分明面試官問(wèn)的每個(gè)深度點(diǎn)我都恰好提前踩過(guò)這種正反饋是會(huì)滾雪球的最直接的影響就是讓我對(duì)后續(xù)字節(jié)、快手幾家大廠的面試都更有底氣。如果你現(xiàn)在也在準(zhǔn)備秋招我的建議就是提前批一定要投尤其像蘑菇街這種有提前批的廠子試一試沒(méi)有任何損失。復(fù)習(xí)時(shí)間不夠的時(shí)候優(yōu)先把項(xiàng)目里每一個(gè)技術(shù)選型的前因后果想明白把HashMap、JVM、MySQL索引、Redis三大問(wèn)題這幾座大山啃透再拿劍指Offer里的高頻題練手。面經(jīng)不是背的是拿來(lái)對(duì)照檢查自己哪里有漏洞的用這個(gè)思路去看你會(huì)少走很多彎路。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
免费操逼91| 大学生美女口爆| 欧美色图天堂在线| 在线观看日韩av不卡| 亚洲av性爱电影| 久久久91福利姬| 日日夜夜草草草| 国产97色在线| 国产精品宅男免费| 亚洲无码?第一页| 人人搞人人插人人操| 国产中午字一暮区| 九草九九九| 啊a一区在线| av资源在线播放天堂| 95自拍视频在线观看| 性欧美91| 97操碰| 欧美人人天天网| 爱啪精品一区| 97精品视频网站| 区一在线观看| 亚洲国产97在线精品一区| 亚州欧美另类| 91狠狠狠| 成人免费在线网站| 91久热这里只有精品| 91GD.COM| 激情五月天综合网| 嗯嗯,啊啊,国产精品| 亚洲国产奇米影视久久| 热99这里有精品综合久久| 亚洲成人精品久久久| 亚洲欲色9532548967一区| 色色综合网站| 久久精品人体AV| 人妻丝袜无 码视频专区| 欧美成人性爱视频大全| 欧美色五月| 首页中文字幕中文字幕免费| 伦理第一页| 91色夜| 久久欧美激情| 99国产精品视频尤物| 久久亚州精品成人Av无| 国产成年精品高清在线观看91| 天天看天天干| 国产 热久久久久国产精品| 中国探花熟女| 亚洲综合网电影91| 日韩美女高潮喷水视频| 女人18精品一区二区三区| 蜜臀99久久精品| 96国产精品| 大香蕉视频啪啪啪啪| 偷拍盗拍亚洲色图图片| 黑人精品XXX一区一二区| 久久精品中文字幕无码l| 日本日逼视频网| 婷婷色一区| 性色国产东北露脸精品视频| 丰满人妻一区二区三区免费 | 天美传媒婬乱在| 夜夜欢天天干| 少妇一区二区三区高速| 亚洲天堂99| 黄色二级片网站| 久久久免费懂色| 久草看看看| 午夜男女爽爽大片免费观看| 天天视频黄网站| 久热99| 国产熟妇一区二区| 精品国产乱码久久久| 午夜性生活av免费在线看| 在线播放一级无码视频| 日韩不卡码| 中文伊人大香蕉视频| 大香网伊人久久综合| 人人操av| 久久久熟女一区| 亲子敌伦对白在线播放| 欧美系列在线一区二区| 一本大道综合伊人精品热热| 人妻夜夜爽天天爽三区麻豆AV网站| 青青草伊人久久| 亚洲精品视频二区| 亚洲图片欧美另类综合免费视频大大香| 国产白领连续中出在线观看| 色九九综合AV| 亚欧毛片基地国产毛片基地| 久久性爱视频| 一区二区三区一亚洲中文字幕、综合区灬 | 极品出轨视频网站| 国产强奸乱伦xd| 亚洲日韩AV视色| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 不卡九肏| 亚洲国产精品久久AV| av资源在线观看少妇| 黄网站黄视频网站进入口| 在线 欧美 亚洲| 亚洲综合另类小说色区亚洲成av人片在www| 中文字幕 国产区| 插老姨肥穴| 青青草原av| 五月天玖玖资源站| 91美女高潮| 婷婷中文网| 高清肉丝中文无码| 九九热九九| x97av| 欧美日本中字另类在线| 香港日本韩国人妇99www.wccm20| 亚洲中文字幕在现观看| 日本东京热大香蕉a片| 国产91亚洲精品一区二区三区| 激情九月婷婷| 人人模人人看| 很黄很污的免费网站| 亚洲97在线| 丰满人妻-区二区三区免费| 91 偷| 极品五月天噜噜| 91美女在线| 91精品综合久久久久久五月丁香| 欧美丝袜中文字幕07在线| 日韩不卡毛片Av免费高清| 青女在线| 国产自偷自拍一区| 四虎影视精品| 超碰 另类 欧美 | 人人人人插| 天天激色| 六十路日本| 97日亚洲欧美| 人人色人人射人人妻| 国产无码三级视频在线观看| 中文字幕乱碼在线| 亚洲欧美日韩综合在线尤物| 精品国产乱码久久久久久网站入口| 1024香蕉视频| 99久久久无码精品国产人| 亚洲在钱| 日韩丝袜人妻AV| 国产无码精品久久久久久| 日韩激情视频| 人妻激情偷乱视频一区二区三区 | 我要色综合网| 欧美日韩亚洲电影| 伊人久久亚洲中文字幕| 51一区二区三区| 欧美亚洲色的图| 五月丁香婷婷色| 在线视频97| 9久精品视频在线观看| xxx0国产在线播放| 伊人操| www.91欧美| 综合色久| 久久黄色视频一区二区三区| 91美| 国产精品视频在线播放| 欧美淫穴| 五月天色色网站| 少妇一级无码精品| 另类欧美色| 美国久久一二三四| 人妻少妇久久久| 国产性爱在线视频一区二区| 蜜乳视频网站| 久久久久99999| 老熟女熟妇| 狠狠色婷婷7777久| 温婉少妇玩3p| 免费A片三p视频| 黄色成年| 91碰碰| 77777亚洲蜜臀精品久久综合蜜臀| 亚洲成人性| 免费操逼91| 男人天堂最新手机版在线青青草| 久久动漫精品视频这里只有精品| 丰满人妻一区二区三区在线| 日本一本一区二区三区四区五区欧美日韩中文字幕 | 天天拍夜夜| 天天摸夜夜操视频| 久久不卡一区二区| 伊人AAA| 人人摸人人添人人操| 国产毛片片精品天天看视频 | 成功精品影院| 岛国AV一区二区电影| 亚洲操人| 操碰97| 色久桃花影院在线观看| 肏逼视频日本| 国产v片在线免费观看| 九九九网站| 91bbbbbb| 天天做天天爱| 日韩欧无码一区二区三区免费不卡| 国内一级精品| 精品国产乱子伦一区二区三区,精品一| 欧美线天码中字| 蜜区区视频79| 亚洲 日本 不卡| 亚洲久久天堂| 人妻精品一区二区| 欧美成人性活片| 超碰97欧美| 青娱乐啪啪视频| 殴美性天天| 色综合一区二区三区| 97色综合中文网| 超碰97久久| 一道α片欧美| 韩国成人精品久久久免费看| 一,爱啪啪,在线免费视频| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 五月丁香影院| 欧美亚洲AN| 99黄页网站| 日韩精品三级片长长久久| 今日头条成人一区二区三区四虎精品| 97精品97久久| 日韩精品 欧美激情| 91色亚洲| 永久免费av无码网站国产app| 天堂69亚洲精品中文字| 三级色综合| 户外裸露刺激视频第一区| 亚洲国产成人高清在线| 国产白领连续中出在线观看| 91制服丝袜| 久久久新亚洲AV| 欧美日韩黄片精品在线| 亚洲日本韩国在线| 99r九九| 天天看特黄的免费网站| 国内成人圈中文字幕无码视频| 久久精品无码熟妇一区二区三区视频导航 | 人妻无码一区二区三区久久99| 人妻熟女一区二区三区视频| 囯产精品久久久久久久久久梁医生| 多毛小伙内射老太婆| 97婷婷色| 亚洲综合性网址| 精品在线78| 国产最火爆久久国产网站网站| 女人被男人桶爽视频网站| 国产欧美一区激情交| 九九热男人天堂| 国产亚洲日本| 久久夜夜| 91久久久久免| 性感美女啊啊啊在线| 热99这里有精品综合久久 | 国产超碰人人操| 大香蕉欧美日韩| 99久久久| www久久99| 裸体1区| 欧美不卡五十路| 偷窥自拍A片| 综合网~91综合网| 久操免费在线| 五月色综合| 999 久久久| 日韩精品资源专区二区| 日本一本一区二区三区四区五区欧美日韩中文字幕 | 不卡啪啪视频| 国产av色网| 九月激情婷婷| 久久天天躁日日躁狠狠躁 | 国产精品视频精品一二| 免费成人在线熟妇网| 丰满人妻区一区二区三| 天天躁日日躁AAAXX| 久操影视| 深夜国产一区二区三区在线看| 国产不卡精品91| 91情色在线| 国产高清无码一区二区三区四区皇冠| 欧美高潮| 久久 国产精品 一区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 国产日本顶级一区二区三区| 六月婷婷综合| 精品传媒在线一区| 欧美天天拍| 精品对白久久不卡| 亚洲天堂,男人| 人人操人人操人妻人| 男人的天堂一区三区| 中文字幕一区二区三区蜜桃视频| 久久成人国产| 干B网| 9久超碰| 搡老女人老91妇女老熟女| 插入综合网| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 午夜人人操| 国产超碰在线一区| 91人妻做a观看视频| 熟女精品一区二区在线观看| 国产剧情AV不卡在线观看| 久久久精品一区二区| 强奸乱伦Av网| 91色欧美| 天天舔天天日天天射| 高清成年美女黄网站免费大全| 蜜臀一二三| 国产一区二区视频在线播放| 天天综合网~91| 国产视频一区二区在线| 日本狂喷奶水在线播放212| 亚洲少妇色图自慰直播| 强奸乱伦av电影| 老鸭窝在线视频播放| 欧美日韩夜夜| 在线观看精品国产免费| 91久久久久久久久18| 好好的日:com久久九九| 四虎免费视频| 夜夜爽爽爽| 呦呦影院| 亚洲97网站| 污啪啪啪视频| 干婷婷综合网| 屁股久久久久久久| 超碰日韩美妻| 97亚洲性爱| 操操逼操操逼操操逼逼| 啊啊啊啊操死我| 人妻内射一区二区在线视频| 熟女啪啪视频| 免费中文在线| 激情黄色片在线观看| 久草久日| 欧美午夜色妇色鬼| 伊人久久88国产女| 玖玖爱免费观看视频| 欧美躁死她一区二区| 少妇久久久久久| 欧美大色交| 中文字暮97| 爆操无码| 18啪啪手机免费性爱| 中文字幕成人乱码熟女精品国50 | 欧美成人免费在线观看| 中文字幕av片| 欧亚日韩综合精品国产| 国产精品久久久久久夜夜夜| 久久精品国产精品亚洲艾通辽熟妇| 香蕉热人人精品| 97国产精品视频| www.人人摸在线视频| 欲射影视| 97在线青| 蜜屁Av| 蜜臀亚洲中文| 久操视频免费在线观看| 99热精品免费| 国产精品成人无码av| 中国少妇XXXX做受| 国产一区自拍欧美日韩| 91久久免费视频互動交流| 欧美中日韩XXXX| yazhouzaixian| 久久久久密臀视频| 六月婷婷一区二区三区| 亚洲熟女乱综合一区二区三区| 成 人 影视 一区 二区 三区 四区 | 欧美性生活综合| 伊人五月天激情| 思思热久久成人| 黄视频免费| 欧州一区二区三区四区| 美国日韩黄片| 秋霞成人做爱| 精品一区二区综合熟妇| AV网站高清无码在线观看| 日韩乱伦AⅤ| 日韩簧片免费看| 日韩精品在线视频在线观看| 人妻丰满熟妇一区二区三| www.亚洲黄色| 岛国免费黄色网址| 国产尤物AV尤物在线观看不卡| 精品视频免费在线一区| 黄片com.| 九九成人视频| 超碰国产情侣自拍网| 一区二区久久天天干狠狠| 91蜜臀在线久久久久| 精品免费一区二区三区在线亚洲人成| 国产白嫩精品久久| 校园春色家庭伦理欧美激情| 风间由美日韩欧美久久| 国产精品国产精品国产| se吧提供国产乱老熟视频胖女人| 自拍偷拍 高清无码| 岛国艾薇凹凸视频天堂| 欧美在线视频99| 中文字幕一区 二 区 三 四 五 区日 日 骚| 很很干很很操| 丝袜无码a片| 欧美天天在线| 欧美性天天| 搞中出久久| 在线视频日韩欧美国产| 久热69九色熟妇97| 人人爽夜夜玩视频| 亚洲色图亚洲| 成人免费福利在线观看| 九九久久九九久久| 日日干男人的天堂| 久久久久久久9| 亚洲熟女乱色| A 天堂| 亚洲无码 国产无码| 成人小说另类在线| 久久久九九网站| 富二代亚洲精品99 | 黄页| 欧美顶级黄色大片免费| 九久9热| 破处bbq| 蜜臀久久99精品久久久久久-DVD原版全| 91露脸熟女专区| 欧美成人性爱视频大全| 欧洲精品一区二区三区| 热99re69精品8在线播放| 久久欲| 婷婷97| 东京热熟女亚洲视频网站| 中国特猛少妇色xxx| 女人被男人桶爽视频网站| 日本特黄f c2| 日日躁天天躁狠狠躁| 操婢日韩| 爱干爱射网啊啊啊| 女生91网站| 午夜久久无码1000合集| 丁香婷婷激情五月天无毒不卡| 久久久久女教师免费一区| 三级AV入口| 亚洲天堂性爱| 91丝袜在线播放| 粉嫩av在线一区二区| 99re9这里只有精品| 天天看片青娱乐| 久久精品国产96精品亚洲拳交 | 久久伊人最新网址视频| 亚洲丝袜色| 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 国产强奸乱伦第1页| 国产粉嫩出水在线播放| 日日夜夜模| 18啪啪手机免费性爱| 欧美中文字幕男人天堂久久精品| 日本一二三免费久久| 男男H黄动漫啪啪无遮挡网站| 超碰人妻中文在线| 五月天久久综合网| surenchaopeng| 欧美A片中文字幕| 怡红院怡春院| 亚洲一区在线观看欧洲| 影音综合网| 懂色Av| 日产国产精品中文久久婷婷| 婷婷av在线中文字幕| 精品无码一区二区| 亚洲啪啪视频免费| 麻豆一区在线| 亚洲午夜福利视频| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 色综合久久av| 欧美日韩青操| 久久免费精品视频免一| 日韩欧美麻豆| 综合色图亚洲欧美| 欧美性爱日韩高清| 校园春色宗合网| 性在久久久久久| 久久九操在线观看| 亚洲中文字幕av| 在线人成亚洲视频免费观看| 久久97资源 网| 伦理第一页| 人夜夜精品网站香蕉嫩草| 色香AV| 99国内熟女露脸视频| 精品久久久av| 国产日韩区| 久久精品中文字幕女同| 久久久精品国产亚洲AV无码| 色妇综合网| 欧美日韩淫加| 国产精品一级特黄aaa大片在线观看| 成人精品欧洲亚洲| 99热精品在线观看| 久久久精品中文字幕爱豆| 夜夜 中文视频rt| 色噜噜综合网| 十八禁av无码免费网站APP| 超碰色美女| 婷婷五月天久久精品视频一区二区三区| 国产在线视频二区| 加勒比aⅴ| 日本99一区二区| 久久婷婷精品| 涩涩这里只有精品视频| 蜜臀久久99精品久久久久久-DVD| 亚洲免费97免费| 亚洲AV永久无码一区仙野| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 超碰97久久国| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 久久久久久亚洲Av无码| 大香蕉伊人75| …中文字幕亚洲乱,97人妻无码费视…| 国产精品久久久亚洲一区| 密乳无码| 欧美日韩国产一区二区小黄片大全| 亚洲人综合| 一区二区精品更新提醒| 婷婷五月天影院| AV污污污污| av爱爱爱| 日韩欧美日韩| 翔田千里无码中出中文字幕| 欧美高清91| 歐美性天天| 四虎影视在线| 97超碰国产精品| 色婷网| 女人双腿搬开让男人桶| 欧美日韩不卡a片| 亚欧高清| 人妻夜夜爽天天爽三区麻豆AV网站| 国产91丝袜在线播放蜜月| 蜜臀99999| 婷婷五月天久久精品视频一区二区三区 | 97精品视频免费| 高清不卡国产| 97九色人妻| 91狠| 人妻夜夜爽天天爽麻豆三区网站 | 97爱综合| 97在线观看| 婷婷综合伊人一区| 五月婷亚洲精品天堂| 啊啊啊啊好疼| 97国产人人| 91久久久亚洲| 日韩免费在线观看不卡| 五十路六十路素人熟女| 久久久久久69国产一区二区| 日本三级一区二区 在线| 影音先锋少妇| 亚洲成人日韩小说| 国产精品香蕉热久久新品| 粉嫩av在线一区二区| 熟女人妇一区二区三区| 国产成人无码网站在线视频| 婷婷综合| 天天摸夜夜摸| 五月开心久久AV官网| 国产情色在线| 日日摸日日碰夜夜爽视频| 男人天堂新在线| 精品九九| 国产福利在线视频网站| 国产乱伦一二三区| 精品国产乱码久久久久久影片| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 超碰97首页| 97chaopenrihan| 十八禁黄色| 成人精品无码| 伦伦成年午夜免费视频| 99综合网| 五月天伊人| 久久国产999| 九九热国产| 欧美呦呦性爱| 99久久精品国产高潮| 亚洲欧美大香蕉| 天天综合欧美综合| 97在线欧洲| 高清无码91| 亚洲欧美精品国产一区二区| 中文字幕免费在线观看| 欧美性爱另类综合| 天堂综合| 久久黄人人爽视频| 影视综合无码少妇| 久久性爱视频| 亚洲综合69| 亚洲丝袜诱惑| 91三级理论片播放器| 99久热| 青青草国产盗摄一二三区| 人妖欧美一区二区| av在线播放国产一区| 免费一级欧美片片线观看| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 首页亚洲国产高跟丝袜诱惑视频| 日韩精品99久久久久久中文字幕| 亚洲,欧美,综合网| 岛国片在线播放| 五月婷婷丁香| 91美女高潮| 成人一道本免费视频| 九九99精品| 国产久久久久影院老熟女| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 欧洲熟妇xxXx欧美老妇裸体| 青青草色情网站视频| 蜜臀久久99精品久久久久久| 333kkkk·亚洲com久久| 安徽熟妇视频| 日本成人在线不卡一区二区三区| 色情五月综合婷婷| 精品9999| 乱伦Av网| 大香蕉青青9| 中文字幕精品一区欧美| 国产黄色动态精品| 秋霞Av理论一级在线| 91操操| 综合少妇网| 被体育老师抱着c到高潮| 久草热制服丝袜在线观看 | 99视频只有精品| 黄页网站成人免费| 色吧五月| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 玖玖爱综合| 啪啪视频免费在线观看| 亚洲。日韩。欧美| 午夜亚洲WWW湿好大| 男人天堂站| 天天上日日上日韩精品| 欧美欲色| 亚洲欧洲综合成人av一区| 三级网站超变态精品| 91在线超高颜值国产| 久久有碼| 亚州免费啪啪视频| 亚洲涩图欧美| 五月婷婷爱六月丁香色| 欧美精品一二三| 男人天堂婷婷五月天校园春色| 日本欧美不卡| 久草精品热视| 欧美探花网| 91男人天堂网| 久热婷婷| 国产精品视频内谢女人| 97色97好| 人妻乱仑一区二区三区| 农村少妇久久久久久久| 欧美亚洲玖玖玖| 亚洲熟女乱色一区二区三区| 伊人991| 国产尹人在线视频免费| 性91| 欧美日韩婷婷中文| 手机看av网站在线看| 天堂成人网| 青青草啪啪网| 丁香婷婷九月| V A在线| 精品人妻一二三四区视频| 亚洲黄色影视| 日本黄大片在线观看视频| 智利AV在线网| 国产精品久久发布| 亚洲成a人在线观看久| 激情在线青青操| 国产亚卅97| 男人的天堂一区三区| 91精品国产91久久青草| 99爱爱| 天美国产三级传媒| 在线无码操| 国产色图乱伦| 色欲久久99精品久久| 99国产精品在线观看| 肉嘟嘟www视频在线观看高清| 69一区二区三区| 激情四射熟女丝袜| 熟妇亚洲一区二区三区| 日韩午夜啪啪视频| 九九精品99| 久久久久久久97| 中文在线视频| 东京热一区二区三区四区五区六区| 国产成人免费观看在线视频| 成人精品在线免费视频| 伊人网在线点播| 国产精品suv一区| 久久国产三区| 国产尹人在线视频免费| 91碰超| 国产强奸AV在线| 亚洲欧洲日韩中文字幕一区| 国产第二页| 欧美大香蕉97| 久久9精品视频| 婷婷五月天丁香| 婷婷五月天激情网| 蜜乳AV.COM| 视频国产成人精品日本亚洲18| 天天综合网~91| 在线小视频| 国产地址二三| 久操 高清| 一二三啪啪专区| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 亚洲av在线免费观看| 九九无码视频| 日日碰狠狠添天天爽超| 啪啪资源网| 天天摸夜夜添无码小视频| 精品国产一区探花在线观看| 美女黄网| 久久一区二区三区四区五区| 欧美丝袜中文字幕07在线| 91欧洲入口| 日本熟妇自慰性高潮一区二区三区| 秋霞鲁丝午夜无码一区二区三| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 麻豆天美传媒毛片| 亚洲AV无码乱码| 大香蕉久久| 校园春色五月天| 久久精品一区二区| 亚洲色婷婷久久久综合日本| 日韩大香蕉| 亚洲欧美天堂| 亚洲欧美一区二区网址| 无码久久亚洲高清,| 色婷婷六月丁香七月婷婷| 在线观看不卡一区二区三区| 亚洲97成人在线观看| 国产精品嫩草影院午夜两性| 欧美性爱免费短视频| 久久亚洲欧美中文字幕国语| 强奸乱伦大香蕉| 午夜福利视频在线一区| 日本综合久久| 九九热男人天堂| 午夜精品久久久99| 天天插天天操天天摸天天射天天看| 久久人妻无码毛片A片麻豆| 亚洲 欧美 日本 国内 首页| 亚州综| 国产午夜精品理论片一二三区区 | 加勒比av中文| 亚洲第一视频 欧美风情 日韩| 欧美激情高清性猛交| A 天堂| 亚欧成人综合影院| 婷婷伊人网| 久久久9品一区二区三区| 欧美在线啊啊啊| 另类老少妇| 一起草三级AV电影在线观看| 操逼天美3区| 91chinese在线| 偷拍亚洲高清图片| 久久久久久中文| AV乱伦国产| 亚洲强奸乱伦影视网| 天天色综合图片| 超碰97最新人妻| 超碰97COm中文| 51久久夜色精品国产麻豆| 色综合九九| 久久国产精品,久久国产| 免费99精品国产自在在线| 久久久蜜桃臀无码视频| 久久久久久精品免费看A级| 伊人成人中文字幕久久网| 久久久99999久网站| 色臀AV| 欧美熟女操屄| 97欧美精品综合| 久久三区四区| 婷婷午夜成人色中色| www.狠狠干.coom| 果冻传媒一区二区三区| 妇女性内射冈站HDWWWCOM| 丁香六月啪| 神马影院午夜福利久久久| 综合网天天| 日韩操人| 亚洲国产精品久久久久婷婷老年| 超碰97人妻免费在线| 色情成人五月天| 蜜桃视频啊啊啊啊| 高清一区AV无码| 超碰色中文| 亚州综合色| 色色色999| 男人天堂网手机版婷婷| 九月激情婷婷| 一区 欧美 日韩 麻豆| 综合久久9| 人妻AV在线| 综合性视频99| 女人 A一级| 亚洲人妖网| 日本人妻中文字幕精品| 久久不卡一区二区| 九九综合九九综合| 天天综合~91入口| 亚洲综合在线第一页| 成片免费播放| 欧美激情亚洲| 国产AV超爽| 亚洲欧美激情小说| 99日精品欧美国产| 爱丝福利| 国产乱伦性爱AV| 玖玖资源视频一区二区三区| www国产天美久久久| 国产人妻精品一区二区三区秋霞| 岛国免费黄色网址| av72网| 狠狠色噜噜狠狠狠狠狠色综合久久 | 久久久久骚| 超碰成人人人爽人人爽| 精品久久久久瑟瑟| 精品久久久久久无码| 亚洲天堂人人妻| 欧美十八禁导航成人| AV色五月天| 狠狠激情综合狠狠操中文字幕| 国产超碰97| 大香蕉啪啪啪| 亚洲国产成人精品女人久久久| 麻豆天美国美国产| 日韩精品中文字幕人妻| 激情欧美日韩女同久久| 久草视频在线视频在线视频在线观看 | 欧美九九九| 蜜臀久久99精品久久久老,,| 精品无码久久久久久久杏吧| 久婷婷一区| 日本国产高清色www视频在线| 青青草导航在线视频| 欧美躁死她一区二区| 国产在线能看的你懂的| 久久久久9999精品九九九| 亚洲天堂无码| 91网站18禁| 好看的91视频| 亚洲AV无码成人精品久久| 国产视频第二页| 麻豆性爱视频在线播放 | 人伦四五区| 国产av白丝| www.91逼逼.com| 97亚洲色图| 啊啊啊好舒服好爽啊啊啊视频| 中文字幕一区二区韩| 久久久久久久久久久久97| 亚洲国产综合久久久性感熟妇| 精品国产一区二区三区四区在线看| 国产精品毛片| 亚洲欧洲视频小说在线观看| 神马久久久久久伦理片| 丝袜美腿丝袜| 久偷拍| 日本3级一区二区免费| 日本国产亚洲一区在线观看| 本道在线| 97资源欧美| a网站免费观看| 欧美日韩亚洲一区二区在线观看| 玖玖无码超碰| 日韩懂色网| 久久人妻视频网| 亚洲av综合色| 天天看天天日天天操| 色偷偷男人的天堂麻豆| 久久9亚洲| 亚洲天堂99| 一本大道不卡一二三区| 超碰在线一区二区| 欧美日韩美女精品久草一区二区三区 | 看看日B真人视频| 麻豆久久久久久久久丝袜| 日韩黄色电影网站| 天天色,天天干,天天干| 久久精品| 综合五月天| 欧美超碰人妻97| 91网亚洲| 欧美美女自慰一区二区三区| 精品国产久热在线观看| 777AV电影| 玖玖爱在线视频免费观看| 青青草在线视频播放器| 欧美日韩天堂| 激情终合网| 亚洲熟妇乱女区二区三区| 超碰在线成人| 日韩AV熟女乱伦| 婷婷去俺也去六月色| 亚洲成人在线高清| 91精品无码久久久久久久 | 嗯嗯啊操我| 婷婷丁香六月天| 91GD.COM| 99日韩| 久久婷婷五月综合| 99精品久久| 色五月综合网| 久久精品99| 五月天激情小说| 久操婷婷| 婷婷综合视频| 志村玲子视频一区二区| 五月婷婷深深爱| 这里只有精品视频| 五月天激情婷婷| 日本在线一二 | 欧美综合在线91| 欧洲一区二区三区免费| 韩国女主播青草在线| 天堂精品小草| 中国小夫妻勾搭露脸淫荡对白 | 亚洲av影音先锋| 丰满少妇乱子伦精品无| 天天视频黄网站| 国产一区二区三区精品观看啪| 操逼逼福利视频| 日韩一级片在线看| 色婷婷久久| 97舔舔| 国产乱弄免费在线视频。| 欧美激情一区二区| 亚洲综合一| 亚洲精品蜜桃久久久| 91中出视频| 亚洲啪啪综合?v一区综合精品区| 日韩精品中文字幕人妻| 成 人片 黄色大片| 性爱乱伦网址| 人人操AV| 射丝袜高跟鞋99| 欧美亚洲日韩16色| 精品成人亚洲午夜电影| 91熟女在线| av网站在线看| 伊人精品久久网站| 国产精品久久久久久亚洲色欲| 黑人娇小av在线播放| av爱爱爱| 玖玖资源综合在线视频| 激情五月丁香五月| 观看视频图片一区二区三区| 91天射| 久欲AV| 日韩9区| 国产日产精品久久快鸭的功能介绍| 亚洲色图尤物视频| 久热大香蕉网站| 清纯唯美综合亚洲| 久久久久久久九九九九| 九九视频黄色片| 性爱1区| 91青视频| 好爽免费视频,| 欧美综合网A| 性爱免费视频成人| 婷婷五月影院| 加勒比av中文| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 日韩AV中文字幕电影| 欧美激情亚洲情色| 亚洲九九九| 亚洲精品中文字幕一区在线视频| 欧美极品少妇交| 久久久久国产精品人妻aⅴ天堂| 人妻一区二区三区熟女| 日韩性爱1级片视频| 操操AV电影| 视频黄站| 欧美日韩*字幕一区| 色色色欧美| 精品人妻一区二区三区视频| 欧亚日韩中文在线| 国产92麻豆天美精品色欲5| 人妻在线臀日韩| 97中文综合| 欧美综合娱乐久久| 不卡超碰护士AV在线免费播放| 国产九九九九九九| 尤物视频一区| 白丝1区2区3区| 国产97色在线 | 亚洲| 午夜一级免费毛片| 亚洲精品一二三四区| 殴美色网| aⅴ日韩成人电影av在线免费看av大全 | 久久久精| 日本成人A片免费看| 大香蕉免| 97欧美精品| 中文字幕永久在线| 日1区2区3区2020| 日本人人操人人操| 午夜后入| 国产强奸乱伦xd| 亚洲棕合电彰| 国产 日韩,欧美 自拍| 99热在线播放| 欧美天堂在线| 99操| 老司机香蕉久久久久| 乱伦熟女区| 伊人嫩草| 国产视频一区二区免费| 国产诱惑| 特级丰满少妇一级AAAA爱毛片| 欧美少妇性乱| 狠狠中文字幕| 亚洲凸凹超碰成人| 久久黄色视频一区二区三区| www.AV有限公司一区| 国产日逼视频| 国产精品久久久久久久久久久久久久久久 | 精品超碰色| 午夜色婷婷| 日本 情色 1区| 91在线色综合| 亚洲一区日韩精品中文字幕| 亚洲美腿丝袜香蕉影视欧美成人| 综合欧美日韩在线观看| 狠狠干2020| 久久五月视频| 粉嫩AV一区二区夜夜| 亚洲精品男人的天堂| 丰满人妻区一区二区三| 操香逼| 93人人操人人| 加勒比无码毛片| 狠狠色丁香| 亚洲综合999| 99re69综合| 国产性爱乱伦AV| 国产白丝网站| 日韩天堂av电影在线观看| 人人做天天爱| 乱色老一区二区三区的观看方式 | 91美女精品| 91女网站| 国产黄色影片在线观看| 2020中文字幕在线| 男人兔费天堂| 91精品微拍福利| 久久久久久裸体| 人妻熟女字幕一区二区| 国产成人91一区二区三区| 桃色人妻在线视频| 久久婷婷亚洲| 日韩强奸av| 玖玖爱综合网| 色av中文字| 人妻81p| 欧美色另类| 超碰这里只有精品| 国产97在线 | 亚洲| 欧美操逼录像国产黄色国产| 精精夜夜| jizzjizz欧美| 亚洲欧美另类小说| 蘋果手機免費看成人Av| 亚洲色婷婷| 亚洲一级性爱视频免费看| 粉嫩AV一区二区夜夜| 目产99999久久999| 天天干天天爽| 东北丰满熟女国产一区| 久久久久久久| 亚洲日韩欧美一区二区| 亚洲精品 大香蕉| 18禁的网站在线| 秋霞网无码| 密臀在线视频| 是还免费视频1727我| 爆乳免费黄网站| 探花激情视频| 亚洲天堂中文字| 九九九九热| 大色网久久| 国产精品久久久九九九| 天天综合精品| 色婷婷久久| 欧美日韩 强奸乱伦| 视频国产成人精品日本亚洲18| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 97一本大道亚洲一区| 九九热免费视频| 亚洲av淫乱| 家庭乱伦国产| 亚洲中文字幕精品一区| 操熟女91| 精品少妇一区二区| 丰满人妻一区| 男人天堂综合| 久艹伊人精品综合在线| 日本超碰在线国产一区| 亚洲精品成人| 黄片不用下载在线观看| 青娱乐国产精品| 久久久久久69国产一区二区| 国产区日韩区在线观看| 麻豆 美女 丝袜 人妻 中文| 96精品一区| 玖玖爱综合网| 极品AV网站在线观看| 亚洲综合图色在线| 超碰99热中文字幕| 嫩草 人人网精品| 91 丝袜在线| 亚洲情色1区| 啊嗯好大视频在线观看| 欧美日韩情色一区二区| 久久久精品国产亚洲伊人| 爽爽淫人网| 校园春色综合| 大香蕉AV丝袜| 嗯啊啊啊轻点视频 | 欧美高清91| 国产精品久久泡妞网站| 97欧美综合网| 99精品人妻| 国产精品不卡高清在线观看| 伊人国产成人av网站| 亚欧无码线免费观看视频| 欧亚无码视频| 黄色大片免费在线| 啪啪视频亚洲第一| 国产浮力影院第1页| 国产树林里野战在线看| 青青草丝袜在线视频| 色五月综合网| 欧美男女午夜啪啪| 中文字幕乱码人妻一区二区三区,99精品 | 日韩乱码Av| 久久111|