国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成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
返回資訊列表
亚洲精品亚洲人成人网| 久热香蕉精品在线视频| 五月丁香啪啪啪| 久9久精品视频| 啊啊啊操死我| baisiav| 精品少妇99| 日本操逼视频导航| 欧亚揄拍偷拍精品视频| 亚洲古典另类欧美在线| 五月天色图影视| 夜夜国自区| 久久草大香蕉| 97手机日韩| www.丁香五月| 日日操夜夜操天天操免费观看麻豆| 91爆操视频| 国产中文福利| 97婷婷色| 人人天天干干| 亚洲成人贴图| 人妻内射一区二区在线视频| 国产精品熟女乱伦| 人人爱人人乐人人操| 九九色色| 成人无遮挡毛片免费看| 91色欧美| 精品丰满熟妇人妻一区| 人妻精品4K4K4K4K4| 综合伊人激情| 欧美久久人体| 天美传媒在线一区| 大香蕉97久久| 黄色av网站在线播放| 久久华人网| 免费农村成人少妇人妻Aa一区二区视频| 午夜黄色免费在线观看| 日本熟女不卡视频| 日本性感人妻91| 91亚洲欧美综合高清在线| 97超碰jingpin| 日韩免费高清大片在线| 日本亚欧爱爱| 求求你操操我| 97一本大道亚洲一区| 国产精品久久久亚洲一区| 久久久一区二区三区三州| 欧美日韩亚洲少妇寂寞影院正在播放| 午夜久久一区二区无码中出| 日本黄 R色 成 人网站| 欧美精品一区二区少妇免费A片 | 人妻夜夜爽天天爽三区麻豆AV网站| 精品久一区免费| 91快色色色色色| 黑人在线91| 99热18这里只有精品| 99热超碰| 伊人成人中文字幕久久网| 永久免费av无码网站国产app | 激情综合网五月婷婷五月天| 国产精品久久久久久久久久久久| 欧美洲精品一级| 少妇毛片久久| 97欧美精品综合| 色婷婷九月| 涩涩这里只有精品视频| 亚洲无码超碰免费| 欧美黄色手机在线观看| 性猛交| 亚洲美腿丝袜香蕉影视欧美成人| 人人妻人人色| 嗯嗯啊啊日韩精品| 久久久久久久9999| www欧美91| 超碰98综合网| 极品后入免费视频| 亚洲色丰满少妇高潮| 麻豆蜜桃视频在线观看 | 欧美亚州综合网图片| 精品久久久不卡一区二区| 婷婷国产精品九区| 日韩欧美麻豆大片| 91色艳| 一区二区偷拍拍视频| 亚洲日韩欧美一区二区| 2026国产精品视频| 老鸭窝日丰县女人| 啊啊啊骚| 麻豆成人影音在线| 粉嫩av平台| 99久久精品国产系列| 92久久| 久久78| 夜夜嗨视频| 91综合网| 91精品女厕偷拍视频| 国产又色又粗又黄又爽| 99re国产精品视频| 青青草中文-久久青草精品一区二区三| 久久婷婷综合国际产色怕| 强奸乱伦大香蕉网| 蜜臀久久99精品久久综合| 亚洲青青青视频在线| 久久秀这里有精品| 欧美在线色| 久久久天美| 综合色播| 97免费在线视频| 91模特在线观看| 清纯唯美综合| 黄色免费一级在线毛片| 中文字幕一区二区三区字幕| 首页中文字幕中文字幕免费| 五月天开心网| 欧美精品第四五页中文字幕在线观看| 人人搡人人肉久久精品| 超碰 欧美| 国产日韩怡红院| 一级一性爱免费视频| 亚洲成人精品在线一区| 动漫爆乳3D奶水一区在线观看| 4399成人黄A片| 91色黑人少妇| 久啪视频| 欧美午夜视频免费观看| 素人播放一区| 老熟乱一区二区三区四区| 超碰97精品| 成人国产精品三级A片| 欧美熟女少妇| 智利AV在线网| 日婷婷| 8050午夜少妇无码| 婷婷九月国产| 色综合V| 九一综合网| 四虎精品亚洲| 国产日韩欧美亚洲精品95 | 亚洲 日韩 欧美 国产综合体| 日韩三级在线观看mp4| 欧美特黄视频网站| 亚洲黄色网址视频| 国产精品电影推荐| 日韩免费高清大片在线| 欧洲乱码一区二区| 欧美精品69性爱| 九九黄色网| 中文无线日韩一区| 成人 日本A片无码8888| 69综合网| 激情天天视频| 久久久久无码| 少妇久久久久| 五月丁香啪啪啪| 人人摸人人舔一区二区| 亚欧性爱ab| 鸥美插入视频| 国产欧美精选激情视频| 尤物av网站| 亚州男人天堂| 午夜大香蕉| 男人的亚洲天堂| 天天综合官网| 99无码视频| 精品久久艹| 3d成人精品一区二区| 91丝袜激情在线| 成年人黄色视频免费| 麻豆2区1区天美| 亚洲天堂资源在线| 91一区二区| 欧美激情高清性猛交| 视频分类 国内精品| 99re在线视频| 欧美日韩第一页| 青青草原成人| 欧美顶级黄片AAAAA在线免费看| 天美传媒av在线| 人人操人人摸人人看人人干| 天天日日日射| 韩国午夜理伦三级好看| 99国产精品自在自在| 色欲日韩欧美在线一区| 久久黄黄黄| 97av在线视频| 美女操逼A A| 久久超碰亚洲人| 超碰在线观看av不卡| 天天看夜夜看日日干| 国产久久视频| 操操逼操操逼操操逼逼| 欧美综合综合| 熟女一区二区| 国产成人手机视频激情| 殴美性天天| 亚洲人在线成线成人| 韩国手机不卡无码三级视频| 视频二区熟女人妻| 青青操青娱乐| AV无码久久久精品| 欧美裸体美女日麻屄| 婷婷情色五月天| 精品久久久高清无码| 亚洲综合色在线| 欧美精品在线观看| 97人人模人人爽人人| 亚洲综合首页| 亚洲AV不卡在线观看| 亚洲成人免费在线| 91精品久久久| www.av家庭乱伦| 蜜臀av网址| 射 色综合| 国产无码高清操逼视频| 久午视频| 亚洲精品久久一区二区三区蜜桃臀| 亚洲中文字幕av| 国产精品一区二区手机看片| 成人情色综合网| 成人色女网| 农村妇女一级二级三级视频| 美女国产一区二区久久| 亚洲天堂五月天国产| 亚洲图片视频小说| 欧洲亚洲人人爽爽视频| 久久精9| 99久久久久| 国产精品嫩草久久久久| 精品中文字幕第一页| 色噜噜国产精品视频一区二区| 大香蕉综合在线| 激情图片伦理国产一区二区日韩| 99色热| 亚洲国产欧美中文永久| 精品高清一区二区三区三州| 亚洲第一页第二页激情| 啊啊啊好想要| 亚洲国产综合图区中文字幕| 久久久久久久唑| 亚洲色图8| 欧美性五月| 国产乱码久久久久久| 久九九九九九九热| 人妻天天爽夜夜爽爽| 十八禁啪啦拍视频无遮挡| 国产理论视频在线播放| 成人影院永久免费观看网址| 国产一区二区成人av在线播放| 少妇三p| 97鸡把在线视频| 超碰在线1234区| 亚洲凸凹超碰成人| www.av不卡中文字幕| 亚洲电影中字一区二区| 一区二区免费电影久久| 色色网91| 午夜欧美女人操逼| 欧美色综合影院| 久久久九九网站| 中文字幕在线免费观看视频| 久久婷婷精品| 亚洲有薄码区日本系列中文字幕| 久草精品国产蜜臀 | 激情婷婷综合久久| 曰韩精品视频一区二区| 多乙久久久久久| 国产超碰人人操| 蜜桃色色网站视频三区| 啊啊啊好湿国产一二| 欧美97日韩| 久久人妇| 久操国产在线| 国产辣妈在线视频福利| 欧日a| 97人人模人人爽人人| 激情视频网址| 最新中文字幕av| 亚洲精品一区二区免费在线观看| 国产热av| 亚洲欧美日韩免费观看| 色五天伊人| 亚洲欧洲综合视频在线| 亚洲国产精品乱码在线观看| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 秋霞成人一级在线观看| 美女国产一区二区久久| 熟妇熟女亚洲天堂网| 欧美综合第一| 97视频播放| 自拍偷拍 日韩欧美| 久久成人午夜精品影院| 国产亚洲 中文欧美久久| 蜜桃在线观看一区二区三区 | 亚洲欧美黄| 乱伦熟女论坛| 亚洲精品亚洲人成人网| 东北老女人的激情视频| 欧美日韩欧美| 久久精品国产亚洲AV高级北京| 五月婷丁香| 欧美激情超碰777| 国产AV天美传媒一区二区三区| 精品在线蜜臀| 中文字幕性感少妇av| 日本少妇va7777| 国产精品成人无码a v毛片| 综合久久欧美| 中亚黄色三级大片 | 有码人妻系列| 五月天婷婷社区| 国内亚洲精彩视频在线| 日韩一级二级在线| 国产精品乱码久久久久| av中文在线| 99re热| 色色色日本| 青青草九九九九九| www国产精品| 粉嫩绯色AV一区二区在线| 女同性恋一区二区三区精品视频| 亚洲男人天堂手机版| 日本免费中文字幕在线| 一牛影视久久久一区二区三区| 日韩在线观看AV| 久久一区二区高清免费| 日本淫穴在线| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 久久狠狠色噜噜狠狠狠狠97| 9l视频自拍9l九色成人| 夜夜操夜夜高潮夜夜爽国产精品区| 国产又猛又粗又爽又黄| 国精综合一二三区影视| 国产精品久久久久久无码红治院| 亚洲男人的天堂网| 国产AV激情无码久久无码 | 亚洲高清自拍| 久久久999网站| 激情小说亚洲| 久久综合18p| 91丝袜在线观看| 午夜人妻精品综合在线| 天美91| 日韩免费人妻色情网站| 国产综合日韩伦理| 一二三四视频在线社区中文字幕| 激情国产乱伦Av| 无码九九| 一区二区偷拍拍视频| 久操免费观看| 亚洲国产精品久久久男人的天堂| 97精品熟女少妇一区| 台湾肥佬网一区二区三区| 国产v片在线免费观看| 2019AV天堂| 最新三级网址| 青青久久久| 99啪啪| 超清中文乱码字幕| 欧洲亚洲人人爽爽视频| 日韩三四五区| 2020中文字幕| 日韩精品在线观看观看| 人人澡人人澡人人| 男女打扑克高清网站| 天天射天天操天天干天天吃2018| 91视频综合在线| 欧美在线视频99| 麻豆国产精品午夜视频| 日日日日做夜夜夜夜做无码97| 在线另类| 熟女精品va中文字幕| 超碰97.com| 亚洲 中文 女同| 操逼视频亚洲| 91天天综合| 91n免费处女| 青青草九九九九九| 亚洲AV永久无码一区仙野| 美女91在线| AV99热18这里只有精品| 亚洲一区二区麻豆影院| 性爱乱伦网址| 欧美爱三级日韩久久| 中文字幕在线第二页| 日韩在线AB| 日本黄 R色 成 人网站| 欧美日韩免费性爱| 搡老女人911熟妇老熟女| 91精品免费| 久久久久久中文字幕中文字幕最新| 草草影院日本第一页| 超碰97中文| 97欧美久久久久久久| 久久手机视直播| 996热| 草莓精品视频在线免费观看| 午夜小电影在线插入淫高潮| 99精品九九九九九九| 色男人色天堂东京热| 精品久久在线区一区| 人妻熟女av国产网站| 另类亚洲一区二区三区| 97久久国产| 国产少妇内射| 99在线精品观看视频中文| 黄色不卡视频| 青青久操| 黑人天8A∨高清网站| 99成人| 激情综合网五月婷婷| 人妻一区视频| 草草影院日本第一页| 精品国模无码| 午夜小电影在线插入淫高潮| 色综合加勒比| 2023天天操夜夜操| 东京热一区二区中文字幕| v91av| 91美女小视频| 亚洲精品九九九| 一二三区精品视频| 欧美爱爱97| 精品欧美乱码久| 欧美天天射| 97亚洲精品| 欧美综合天天| 天天做天天爱夜夜爽毛片试看| 97香蕉网| 亚洲一区二区三区春色| 人人人摸人人| 欧美丰满少妇xx高潮| 2018天天干在线视频| 免费精品人妻一区二区三| av无码av无码专区| 色色色综合网| 男人的天堂.com| 青青青青草av在线观看| 蜜臀AV成人精品蜜臀| 偷拍在线观看视频| 熟女露脸激情自拍视频| 精品玖九九久| 一本色道综合久久欧美| 欧美极品性爱天天射| 免费作爱一级视频| 人妻少妇精品一区二区三区| 九九九九九九亚洲| 国产又粗又大硬免费色网视频| 9999久久久| 综合激情二| 欧美一级黄色18片免费看| 日韩无码成人电影| 91人妻丝袜无码| 女人的天堂大香蕉网| 五月婷婷青青草娱乐伊人| 超碰人人干天天射| 亚洲AV成人精品网站在AV| 久久国产乱子伦精品免费女人| 久久久国产成人一区二区三区在线| 婷色五月| 精品无码久久久久| 91天堂| 91香蕉视频在线观看免费| 97国产高清视频在线观看| 我要看免费韩日黄片| 日本一区二区三区欧美日韩中文字幕| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 国产欧美日韩精品中文| 五月丁香在线| 欧美玖玖爱免费玖玖| 91精品国产一区三一| 亚欧免费| 97亚洲一区| 久肏视频字幕| 搡老女人老妇女AAA一VU麻豆| 九九热在线视频| 金典av| 欧美综合另类| 伊人色综合网电影| 久久久婷| 男人午夜天堂| 99久久网站| 老司机天天操| 国产AV人人 夜夜人人澡| 91人人爽人人爽| 日本在线不卡123| 日韩97视频| 性久久久| 97超碰jingpin| 伊人视频| 特级毛片特黄久久免费看 | 天美av在线观看| 综合天天。| 99这里只有精品国产| 性吧在线视频| 亚洲成人ab| 国产欧美日韩在线不卡第一页| 麻豆性爱视频在线播放| 日本操逼视频免费| 超碰97起碰| 日本幼女18+| 成人性爱电影网| 久久久久极品| 国产精品久久成人免费| 日本孕妇孕交| 手机在线人成免费视频| 青青草狠狠撸| 8050无码八戒| 亚洲国产精品久久AV| 日本女人操逼| 久久久久熟女| 天天欧美色| 欧亚日韩中文在线| 欧美色图片91| 国产v片在线免费观看| 欧美日韩资源在线| 色波多| 四虎影库国产精品免费| 国产精品第一区第一页| 日韩 欧美 校园一区| 国产隔壁老王影院在线| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 成人短视频在线观看| 人妻人久久精品中文字幕| 欧亚免费视频| 综合久久97| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 无码99| 天天做天天爱| 欧美日韩黄色片一区二区三区四区人与兽做爱| 久久精品 六十路 熟女 欧美| 肥臀熟女福利视频一区二区| 综合av社区| 91n免费处女| 婷婷久久久| 超碰午夜| 亚洲诱惑| 99re在线观看| 九九热久久99精品re| 日日嗨AV一区二区夜夜| 少妇滛荡视频| 亚洲春色一区二区三区| 青青伊人久久| 人妻熟女午夜精品在线| 国产一区二区三区白丝| 蜜桃臀AV在线| 任我爽视频在线观看| 国产精品美女久久久久AⅤ国产馆| 欧美亚洲成人在线一区二区三区| 欧美成人性爱视频大全| 天天综合亚洲综合| 久久久禁| 亚洲精品一区中文字幕乱码| 手机在线免费看的av| 精品中文一区二区| 九九九九久久久| 翔田千里AⅤHD无码| 久草毛片| 欧美天天谢综合网| www九九热| 日婷婷| 国产蜜臀精品一区二区尤物| 韩国女主播青草在线| 最新日韩黄片| 免费av在线播放二区| 久久蜜桃一区二区| 安徽熟妇视频| 亚洲少妇色| 操逼1区| 边做饭边操逼逼| 俺去啦自拍| 青青操少妇| 久久精品人体AV| 风流老熟女一区二区三区l| 狠狠操使劲操| 一本色道人妻久久| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 九九久久首页| 992这里有精品| 91c色| wwwxxx日本爽| 国产在线综合福利网站| 嗯嗯啊啊啊好爽| 亚洲一区中文精品| 久操国产在线| 91久久国产精品| 亚洲欧美91√| 夜夜夜夜爽| 亚洲日产专区婷婷| 另类av综合久久| 欧美黄色图片| 蜜伊人色综合97| 97天天摸天天碰| 色综合五月天| AV 少妇 人妻 偷拍| 国产一区二区欧美日本| 中日韩熟女| 中国zzijzzijzzwww精品| 天天射天天| 综合久久少妇中文字幕| 极品国产内射| 国产操逼网站亚洲一级黄色| 97亚洲在线| 91欧美综合| 亚洲高清自拍| 国产强奸乱伦无码视频| 免费岛国一级片| 少妇被c 黄 免费观看| 伊人天天久久动态图| 亚洲久久久久| 国产福利电影| 在线观看成人性爱免费小视频| 变态乱伦伪娘灌肠一区二区| 人妻一区视频| 国内精品久久久久影院亚洲| 婷婷视频网| 亚洲综合小说另类图欧美视频激情小说色五月天 | 日本污ww视频网站| 99久在线精品99re8| 91久久婷婷| 台欧久久精品视频| 少妇六月天| 国产精品久久久久久久久久久久久久久久 | 日本超碰在线国产一区| 日韩在线视频1234| 精品国产一区二区三区久久久蜜臀| 韩国轻伦国内自拍一区| 精久久久91| 国产精品第一页国产大屁股视频免费区i| 风骚少妇视频中文字幕| 午夜福利 成人 91| 四虎精品永久在线播放| 超碰在线香蕉| 五月丁香综合激情| 97爱爱影院| 一摸二插三插| 国产无码精品无码| 国产区91柔拿会所技师| www.天天干| 久久超碰免费的| 密臀成人视频久久久| 好吊色综合| 777AV电影| 色婷婷狠狠18禁| 9超碰免费| 高潮9999外国| 99re国产精品视频| 中文字幕精品一区二区精品| 成人久久精品| 亚洲在线a| 天天搞在线综合网| 久久啊哟| 99re99在线视频| 小视频国产| 久久久精品日本一道| 91伊人久久在线| 2023天天操夜夜操| 99色视频| 午夜福利无毒不卡| 人妻熟女午夜精品在线| 日产成人久久| 九九九精品成人免费视频小说| 国产日本久久免费精品| 97超碰色屌| 超碰97男女| 欧美日韩性爱操大逼| n1038 一二三区| 神马久久午夜| 婷婷爱五月| 亚洲乱熟女一区二区| 成人乱人伦一区二区| 志村玲子视频一区二区| 亚春色色| 日本精品第一视频在'| 狠狠躁天天躁日日躁| 欧美亚洲激情| 2020中文字幕| 欧美双插| 日韩一级二级| 好爽视频在线观看| 亚洲av无码成人精品国产| 嗯嗯啊啊好大好爽| 涩涩涩综合| 亚洲视频,小说| 国产美女自拍AV| 九月丁香婷婷| 日韩欧美亚洲自拍偷拍| 国产伊人自拍| 色婷婷国产精品一区在线观看| 99在线观看| 欧美宗合网| 日日日日日| 激情欧美97| 91 手机在线播放 绯色| 激情一区二区| 久久久久中出| 99亚洲精品| 久久綜合很很很| 国产一级特黄大片处女| 99国产精品久久久在线播放| 国产专区第一页| 劲爆欧美人妖三区91| 中文操嬖片。| 97欧美资源| 精品区9| 亚洲熟妇一,二,三期| 蜜桃精品一区二区三区ww| 精品一级毛片在线观看| 超硑97精品| 福利视频一区二区微拍| 久久激情视频| 色欧美天天| 麻豆国产精品午夜视频| 嗯嗯,好大,好爽,好骚| 国产亚洲日韩在线三区黑人| 欧美黑人168页欧美黑人167| 美女自卫慰黄网站免费| 啊啊啊免费视频| 91精品成人| 亚洲国产高清福利视频| 97天天| 天天做天天爱天天爽AV| 思思性爱| 天天噜| 欧美激情色婷婷花野真衣一区二区 | 九九热免费国产视频婷婷伊人五月 | 东京热熟女亚洲视频网站| 精品亚洲黄色片 国产精品导航一区二区 | 亚洲久久天堂| 久久久99久9| 色综合久久88色综合久久天天| 欧美色97| 欧洲亚洲人妻无码中字久久三区四区| 日本操逼视频导航| 国产精品96| 亚洲人久久久网| 天天综合在线4| 欧美激情另类一区二区| 校园激情狠狠四射| 欧美白嫩在线放| 精品色色| 波多野结衣先锋影音| 伦理第一页| 欧美成人国产精品| 超碰激情808| 久99久视频| 377p欧洲日本亚洲大胆| 麻豆天美传媒毛片| 麻豆色约约| 伊人国产视频| 精品夜夜澡人妻无码| 欧美强奸乱| 日韩欧美操逼xxx| 少妇的嫩逼图片| 9999亚洲精品| 亚洲情欲| 白嫩妹子国产骚| 97大色网| 国产精品情侣啪啪| 亚洲成人免费在线| 亚洲成a人在线观看久| 欧美AAAA黄片| 久久久久久久精| 免费男人的天堂| 99精品久久久久久| 麻豆福利视频导航| 蜜臀精品1区2区| 激情第四色| 夜夜草网站| 在线无码操| 强奸国产在线| 日韩乱伦AⅤ| 亚洲春色欧美激情自拍| 人妻精品视频一区二区三区| 成人性生活高清视频在线播放| 99re综合伊人| q2午夜理论片夜色av| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 欧美亚性天堂| 激情四射五月天| 免费a在线播放v| 亚洲精品aa久久伊人| 国产网站在线播放| 亚洲精品影视老司机| 国产精品亚洲天堂网址| 亚洲精品一区二区精品| 欧美的性爱网站免费| 欧美不卡在线一区二区| 国产精品久久久啊| 立川理惠被中出无码| 少妇色| 91社区伊人| 五码视频在线观看| 自怕偷自怕亚洲精品| 收看日本人日bb| 人人操人人操人人人操| 岛国网址国产| 亚欧高清在线| 色色热| 精品国产污一区二区三区| 久久一留热品黄| 秋霞午夜视频一区二区| 欧美青青视频| 后入福利| 色汉综合| 欧美伊人久久综合网| 一区操逼日比视频| 97最新在线播放视频| 色婷婷电影网| 台湾佬中文娱乐自偷自拍| 国产精品视频播放| 熟妇高潮二区三区| 五十路三区在线| 国产亚洲色停停久久99精品91| 小说区 图片区色 综合区| 免费国产电影一区二区| 国产精品999zyz| 五月婷婷爱六月丁香色| 丁香五月天激情综合| 精品夜夜澡人妻无码| 78久久久| 国语精品av| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 中文字幕精品人妻丝袜| 国产精品久久久777| 亚洲凸凹超碰成人| 日本幼女18+| 日韩免费簧片| 国产精品久久久久久久久AV大片| 猛交交| 午夜精品久久999热蜜桃介男人用| 性色高清..……| 亚洲精品久久久久毛片A片拉屎| 九九精品99| 99操逼| 欧美91在线+|+欧美| 欧美中日韩XXXX| 免费超碰97在线观看| 色婷婷丁香五月| 欧美少妇性乱| 亚洲综合影院| 精品成人av一区二区三区在线| 热天堂一区二区| 密臀成人视频久久久| 偷拍 欧美 日韩| 综合欧美日本三级| 亚洲天堂第一页| 啊啊啊啊啊啊啊啊在线观看| 中文字幕一区二区韩| 中文字幕一区二区三区人妻少妇在线| 亚洲好色人妻| 精品成人无码| 欧洲免费一区二| 日韩人妻无码不卡网站| 岛国在线一区二区三区| 少妇与黑人高潮在线| 久久久久久久久久久久97| 一级黄色视频网| 亚洲最大91网| 日韩久射综合| 欧美不卡二区| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 收看日本人日bb| 天天操女人| 美欧色综合| 中文字幕 国产区| 亚洲的天堂网| 吖在线不卡一区二区国产剧情| 国产伦精品一区二区三区视频女| 欧美爱国产综合、| 国产精品宅男免费| 久久亚码| 亚洲成人无码影院| 狠色婷婷久久一区二区三区_| 久久久精品中文字幕爱豆| 亚洲欧洲小说图片视频| 怡红院成人视频| 婷婷色色网| 精品无码少妇| 色色亚洲| 男人久久天堂| 东北女人av| 日本视频在线中文字幕| 久久久工口| 日本成a人v网站在线观看| 久久久草成人网站久久久草成人久久久草久久久| 女人18精品一区二区三区| 日韩性爱小视频在线观看| 91欧美巨乳| 亚洲国产成人高清在线| a啊啊啊啊啊啊啊啊一区二区| 精品亚洲国产成人AV制服丝袜 | 国产AV高清AV无码| 一本久久久精品| 久久婷婷六月综合| 91人妻在线视频| 日韩97视频!在线| 人人操,人人插| 二三四区精品| 亚洲最大网站av| 日韩精品午夜操呦呦不卡影院 | 欧美一区二区男人天堂| 一区麻豆 高清中文字幕| 亚洲国产美女久久久久| 九九九九日本| 亚洲精品中文字幕一区在线视频 | 日韩国产欧美伦理在线| 长久操视频| 狠狠操狠狠爱| 成人小说另类在线| 欧美亚洲日韩16色| 熟女突然公开看18禁影片| 97超碰欧美精品| 国产福利夜| 可以免费观看的日韩av毛片| 婷婷人妻激情| 亚洲人在线| 天天干夜夜一操| 精品传媒在线一区| 久久亚洲不卡一区二区三区| av无码精品久久久久| 91N综合网| 四季AV综合网址| 无码国产精品久久久久| 日韩一二三区| 热热色色综合| 亚洲,欧美,春色,另类| 国产传媒午夜理伦精品| 极品出轨视频网站| 图色综合网| 精品成人av一区二区三区在线| 国产精品久久久啊| 91熟女.com| 操人妻丝袜高跟| 破苞ⅩXXX性无码动漫无码| 2017大香蕉| 91综合天天看| 亚洲成人精品久久久| 五月婷婷AV| 伊人久久在线视频观看| 亚洲国产精品无石码久久 | 亚洲美女自拍偷拍视频| 96久久久| 久久久久成人网| 一直超碰| 91精品成人www| 日本在线视频导航| 亚洲国产欧美一区二区潘金莲 | 激情五月婷婷| 激情啪啪拍91| 亚洲国产欧美一区二区潘金莲| 亚洲色图A| 午夜精品久久久久久久99| 亚欧美天堂在线| 亚洲色图大香| 99热这里只有精品地址| 亚洲小电影免费涩涩成人在线高清| 色综合天天爱去电影网| 欧美色图人妻| 青青草五月天| 中文字幕在线观看第二页| 欧美色色色| 亚洲精品日韩国产欧美| 色黄色美女大长腿午夜视频| 国产 日韩,欧美 自拍| 男人的天堂VA| 国产精品午夜精品| 在线情色电影 91大 | 久操国产在线| 怡红院久久老司机| 四虎影视永久在线观看精品免费网站 | 欧美色图人妻| 亚洲综合性网址| 四虎国产成人精品免费一女五男| 欧美性爱97超碰| 久7色| 爱爱动态120秒| 日韩乱码Av| 亚洲 欧美 91| 亚洲色人妻综合| 99热免费| 97大色网| 色九九九综合| yy少妇精品久久| 96久久久精品| 九九九九九九九| 国产AV线| 亚洲色图日韩丝袜制服一区二区五月在线| 97欧美久久久久久久| 后入日本1234| 欧美午夜熟妇黑人精品91| 精品国产乱码久久久影院| 国产精品白丝AV| 唯美清纯 妖精视频| 久久久无码视频| 久久国产AⅤ| 精品成人无码| 亚洲成人性爱在线观看| 亚洲成人久久美女| 成人资源中文字幕在线观看天天| 国产欧美伊人| 蜜桃视频一区二区三区在线观看| 操一区| 一本色道久久综合亚洲二区三区| 精品人妻15区| 色色毛片| 高清成年美女黄网站免费大全| 日韩性爱再线视频| 五月丁香网站| 99re不伦| 国产女主播视频在线观看| 巨乳特殊服务按摩| 国产激情视频一区区三区| se吧提供国产乱老熟视频胖女人| 少妇啪啪自拍| 色五月丁香五月| 麻豆AV一区二区| 在线五区| 色激情综合网站| 国产麻豆福利av在线播放| 97人人射| 婷婷另类小说| 大逼色网站| 激情黄色片在线观看| 久久久免费的精品| 精品 码产区一区二-1080P高清在线www-B029AV| 97亚洲国产影视| 天天插天天操天天摸天天射天天看| 超碰 欧美| 国产二区三区免费视频| 性爱乱伦网址| 少妇蜜汁| 成人资源中文字幕在线观看| 秋霞色色影院| 强奸a片网| 亚洲AV高潮| 亚洲 欧美 第一页| 亚洲乱伦图片视频| 国产成人资源| 中文字幕色AV| 国产男女边吃边摸视频网站| 九久9精品| 久久婷婷欧美| 国产精品久久久吖| 99re久久| 色香伊人| 你懂的在线观看区国产| 五月婷婷基地| 青草园大香蕉| 74成人在线| 精品国产乱码久久久久A| 大屁股熟女一区二区三区| 性无码专区2020| 99热在线播放| 天天拍天| 精品欧美А∨无码黑人大荫蒂| 美中韩AV综合网| 超碰超碰超碰超碰的大鸡吧操黑丝袜 | 一区二区激情国产熟女 | 精品久热| 久久风骚城市| 亚洲一级性爱视频免费看| 天堂av2019| 精品视频久久| 色9999日韩国产| 日韩欧美蜜桃精品久久中文字幕久久| 无码一区二区精品视频久久久春药| 青青网三级视频| 四虎精品永久在线观看| 色综合av男人天堂| 久久m| 精品国产一区二区三区四区在线看 | 熟妇高潮精品一区二区三区下载| 操啊国产| 在线综合 亚洲 欧美中文字幕 | 人人爽夜夜操| 亚洲,日韩,欧美,成人播放 | 精品一国2| 快播久久人人aV| 尤物黄色在线观看网站| 日本丝袜美腿人妻九九| 天美精品原创av片国产| 97色色网| 92久久| 五月婷婷激情综合| 色色97爱| 天天综合精品| 日本不卡在线二区三区| 97色色色| 清纯唯美亚洲综合| 91婷婷伊人狠人| 久久久999| 日本一二区免费| 中文字幕人妻资源在线| 亚洲情色一区三区| 欧美性爱第一页久久| 国产精品午夜成人福利| 摸奶性爱视频网站在线免费播放| 天天综合网在线| 天天插夜夜操| 青操影院| 久久色情| 曰韩中文人妻视频| 欧美九九九| 偷拍在线观看视频| 啪啪视频亚洲第一| 熟妇国产免费一区| 久操视频资源站公开| 欧美九一精品久久久熟妇| 日韩中文字幕视频在线观看| 啊啊啊慢点| 亚洲……91| 性爱视频啪啪啪啪| 一摸二插三插| 国产伦精品一区二区三区视频女| 国产精品 视频| 传媒免费一区二区三区| 97摸视频| 91综合中文字幕| 免费网色网站| 探花激情视频| 99国产精品| 老女人碰碰在线碰碰视频| 操婷婷逼| 搡老女人911熟妇老熟女| 丝袜美女诱惑 91 视频| 伊人久久婷婷| 被窝影院午夜看片无码| 精品一区二区久久| 夜夜操天| 国产综合网站在线播放| 国产97亚洲| 四虎在线播放| 国产欧美日韩在线观看麻豆传媒公司| 乱伦日本中文自拍| 日本 情色 1区2区3区| 久操B网| 18禁网站在线播放| 91成人无码| 亚洲系列欧美| 天天肏美女| 网页导航五月天免费一二三区| 好爽视频在线观看视频| 东方亚洲在线操逼天堂| 特污免视频| 免费中文在线| 色屁屁影院www国产| 巨乳特殊服务按摩| 使劲用力艹少妇视频一区二区| 99热免费| 人人操人人摸人| 国内精品久久人妻性色av| 久久久久久十| 屁股久久久久久久久| 尤物av网站| 四虎AV在线观看| 很很热性爱视频| 秋霞成人一级在线观看| 中文字幕一区二区视频在线观看| 精品人妻视频一区二区在线播放| 色狠人在线99|