日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java夺命21连问!(附答案)

發布時間:2025/3/11 java 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java夺命21连问!(附答案) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

大家好,我是磊哥。有位朋友工作三年,去面試,給大家整理一下面試題,并附上答案。

  • Mysql索引在什么情況下會失效

  • MySql的存儲引擎InnoDB與MyISAM的區別

  • Mysql在項目中的優化場景,慢查詢解決等

  • Mysql有什么索引,索引模型是什么

  • B-樹與B+樹的區別?為什么不用紅黑樹

  • Mysql主從同步怎么做

  • 樂觀鎖與悲觀鎖的區別?

  • 聊聊binlog日志

  • redis 持久化有哪幾種方式,怎么選?

  • redis 主從同步是怎樣的過程?

  • redis 的 zset 怎么實現的?

  • Redis 過期策略和內存淘汰策略

  • Hashmap實現原理

  • select 和 epoll的區別

  • http與https的區別,https的原理,如何加密的?

  • Raft算法原理

  • 消息中間件如何做到高可用

  • 消息隊列怎么保證不丟消息的

  • 聊聊Redis的哨兵機制

  • 算法題:無重復字符的最長子串

  • 1. Mysql索引在什么情況下會失效

    • 查詢條件包含or,可能導致索引失效

    • 如何字段類型是字符串,where時一定用引號括起來,否則索引失效

    • like通配符可能導致索引失效。

    • 聯合索引,查詢時的條件列不是聯合索引中的第一個列,索引失效。

    • 在索引列上使用mysql的內置函數,索引失效。

    • 對索引列運算(如,+、-、*、/),索引失效。

    • 索引字段上使用(!= 或者 < >,not in)時,可能會導致索引失效。

    • 索引字段上使用is null, is not null,可能導致索引失效。

    • 左連接查詢或者右連接查詢查詢關聯的字段編碼格式不一樣,可能導致索引失效。

    • mysql估計使用全表掃描要比使用索引快,則不使用索引。

    2. MySql的存儲引擎InnoDB與MyISAM的區別

    • InnoDB支持事務,MyISAM不支持事務

    • InnoDB支持外鍵,MyISAM不支持外鍵

    • InnoDB 支持 MVCC(多版本并發控制),MyISAM 不支持

    • select count(*) from table時,MyISAM更快,因為它有一個變量保存了整個表的總行數,可以直接讀取,InnoDB就需要全表掃描。

    • Innodb不支持全文索引,而MyISAM支持全文索引(5.7以后的InnoDB也支持全文索引)

    • InnoDB支持表、行級鎖,而MyISAM支持表級鎖。

    • InnoDB表必須有主鍵,而MyISAM可以沒有主鍵

    • Innodb表需要更多的內存和存儲,而MyISAM可被壓縮,存儲空間較小。

    • Innodb按主鍵大小有序插入,MyISAM記錄插入順序是,按記錄插入順序保存。

    • InnoDB 存儲引擎提供了具有提交、回滾、崩潰恢復能力的事務安全,與 MyISAM 比 InnoDB 寫的效率差一些,并且會占用更多的磁盤空間以保留數據和索引

    3. mysql在項目中的優化場景,慢查詢解決等

    我們面對慢查詢,首先想到的就是加索引。還有就是慢查詢的排查解決手段:

    打開慢查詢日志slow_query_log,確認SQL語句是否占用過多資源,用explain查詢執行計劃、對group by、order by、join等語句優化,如果數據量實在太大,是否考慮分庫分表等等。

    4. Mysql有什么索引,索引模型是什么

    數據結構維度來講的話,一般使用都是B+樹索引,大家想詳細理解的話,可以看我之前這篇文章哈:MySQL索引底層:B+樹詳解

    5. B-樹與B+樹的區別?為什么不用紅黑樹

    B-樹與B+樹的區別:

    • B-樹內部節點是保存數據的;而B+樹內部節點是不保存數據的,只作索引作用,它的葉子節點才保存數據。

    • B+樹相鄰的葉子節點之間是通過鏈表指針連起來的,B-樹卻不是。

    • 查找過程中,B-樹在找到具體的數值以后就結束,而B+樹則需要通過索引找到葉子結點中的數據才結束

    • B-樹中任何一個關鍵字出現且只出現在一個結點中,而B+樹可以出現多次。

    為什么索引結構默認使用B+樹,而不是B-Tree,Hash哈希,二叉樹,紅黑樹?

    • Hash哈希,只適合等值查詢,不適合范圍查詢。

    • 一般二叉樹,可能會特殊化為一個鏈表,相當于全表掃描。

    • 紅黑樹,是一種特化的平衡二叉樹,MySQL 數據量很大的時候,索引的體積也會很大,內存放不下的而從磁盤讀取,樹的層次太高的話,讀取磁盤的次數就多了。

    • B-Tree,葉子節點和非葉子節點都保存數據,相同的數據量,B+樹更矮壯,也是就說,相同的數據量,B+樹數據結構,查詢磁盤的次數會更少。

    6. Mysql主從同步怎么做

    大家要熟悉MySQL主從復制原理哈:

    詳細的主從復制過程如圖:

    上圖主從復制過程分了五個步驟進行:

  • 主庫的更新SQL(update、insert、delete)被寫到binlog

  • 從庫發起連接,連接到主庫。

  • 此時主庫創建一個binlog dump thread,把binlog的內容發送到從庫。

  • 從庫啟動之后,創建一個I/O線程,讀取主庫傳過來的binlog內容并寫入到relay log

  • 從庫還會創建一個SQL線程,從relay log里面讀取內容,從ExecMasterLog_Pos位置開始執行讀取到的更新事件,將更新內容寫入到slave的db

  • 主從同步這塊呢,還涉及到如何保證主從一致的數據庫主從延遲的原因與解決方案、數據庫的高可用方案

    7. 樂觀鎖與悲觀鎖的區別?

    悲觀鎖:

    悲觀鎖她專一且缺乏安全感了,她的心只屬于當前事務,每時每刻都擔心著它心愛的數據可能被別的事務修改,所以一個事務擁有(獲得)悲觀鎖后,其他任何事務都不能對數據進行修改啦,只能等待鎖被釋放才可以執行。

    select ...for update就是悲觀鎖一種實現。

    樂觀鎖:

    樂觀鎖的“樂觀情緒”體現在,它認為數據的變動不會太頻繁。因此,它允許多個事務同時對數據進行變動。實現方式:樂觀鎖一般會使用版本號機制或CAS算法實現。

    之前用樂觀鎖解決過實戰的并發問題,大家有興趣可以加我微信,一起聊聊哈。

    8. 聊聊binlog日志

    binlog是歸檔日志,屬于MySQL Server層的日志??梢詫崿F主從復制和數據恢復兩個作用。當需要恢復數據時,可以取出某個時間范圍內的binlog進行重放恢復即可。

    binlog 日志有三種格式,分別是statement,row和mixed。

    如果是statement格式,binlog記錄的是SQL的原文,他可能會導致主庫不一致(主庫和從庫選的索引不一樣時)。我們來分析一下。假設主庫執行刪除這個SQL(其中a和create_time都有索引)如下:

    delete?from?t?where?a?>?'666'?and?create_time<'2022-03-01'?limit?1;

    我們知道,數據選擇了a索引和選擇create_time索引,最后limit 1出來的數據一般是不一樣的。所以就會存在這種情況:在binlog = statement格式時,主庫在執行這條SQL時,使用的是索引a,而從庫在執行這條SQL時,使用了索引create_time。最后主從數據不一致了。

    如何解決這個問題呢?

    可以把binlog格式修改為row。row格式的binlog日志,記錄的不是SQL原文,而是兩個event:Table_map 和 Delete_rows。Table_map event說明要操作的表,Delete_rows event用于定義要刪除的行為,記錄刪除的具體行數。row格式的binlog記錄的就是要刪除的主鍵ID信息,因此不會出現主從不一致的問題。

    但是如果SQL刪除10萬行數據,使用row格式就會很占空間的,10萬條數據都在binlog里面,寫binlog的時候也很耗IO。但是statement格式的binlog可能會導致數據不一致,因此設計MySQL的大叔想了一個折中的方案,mixed格式的binlog。所謂的mixed格式其實就是row和statement格式混合使用,當MySQL判斷可能數據不一致時,就用row格式,否則使用就用statement格式。

    9. Redis 持久化有哪幾種方式,怎么選?

    既然它是基于內存的,如果Redis服務器掛了,數據就會丟失。為了避免數據丟失了,Redis提供了兩種持久化方式,RDB和AOF。

    9.1 AOF 持久化

    AOF(append only file) 持久化,采用日志的形式來記錄每個寫操作,追加到AOF文件的末尾。Redis默認情況是不開啟AOF的。重啟時再重新執行AOF文件中的命令來恢復數據。它主要解決數據持久化的實時性問題。

    AOF是執行完命令后才記錄日志的。為什么不先記錄日志再執行命令呢?這是因為Redis在向AOF記錄日志時,不會先對這些命令進行語法檢查,如果先記錄日志再執行命令,日志中可能記錄了錯誤的命令,Redis使用日志回復數據時,可能會出錯。

    正是因為執行完命令后才記錄日志,所以不會阻塞當前的寫操作。但是會存在兩個風險

  • 更執行完命令還沒記錄日志時,宕機了會導致數據丟失

  • AOF不會阻塞當前命令,但是可能會阻塞下一個操作。

  • 這兩個風險最好的解決方案是折中妙用AOF機制的三種寫回策略 appendfsync:

  • always,同步寫回,每個子命令執行完,都立即將日志寫回磁盤。

  • everysec,每個命令執行完,只是先把日志寫到AOF內存緩沖區,每隔一秒同步到磁盤。

  • no:只是先把日志寫到AOF內存緩沖區,有操作系統去決定何時寫入磁盤。

  • always同步寫回,可以基本保證數據不丟失,no策略則性能高但是數據可能會丟失,一般可以考慮折中選擇everysec。

    如果接受的命令越來越多,AOF文件也會越來越大,文件過大還是會帶來性能問題。日志文件過大怎么辦呢?AOF重寫機制!就是隨著時間推移,AOF文件會有一些冗余的命令如:無效命令、過期數據的命令等等,AOF重寫機制就是把它們合并為一個命令(類似批處理命令),從而達到精簡壓縮空間的目的。

    AOF重寫會阻塞嘛?AOF日志是由主線程會寫的,而重寫則不一樣,重寫過程是由后臺子進程bgrewriteaof完成。

    • AOF的優點:數據的一致性和完整性更高,秒級數據丟失。

    • 缺點:相同的數據集,AOF文件體積大于RDB文件。數據恢復也比較慢。

    9.2 RDB

    因為AOF持久化方式,如果操作日志非常多的話,Redis恢復就很慢。有沒有在宕機快速恢復的方法呢,有的,RDB!

    RDB,就是把內存數據以快照的形式保存到磁盤上。和AOF相比,它記錄的是某一時刻的數據,,并不是操作。

    什么是快照?可以這樣理解,給當前時刻的數據,拍一張照片,然后保存下來。

    RDB持久化,是指在指定的時間間隔內,執行指定次數的寫操作,將內存中的數據集快照寫入磁盤中,它是Redis默認的持久化方式。執行完操作后,在指定目錄下會生成一個dump.rdb文件,Redis 重啟的時候,通過加載dump.rdb文件來恢復數據。RDB觸發機制主要有以下幾種:

    RDB通過bgsave命令的執行全量快照,可以避免阻塞主線程。basave命令會fork一個子進程,然后該子進程會負責創建RDB文件,而服務器進程會繼續處理命令請求

    快照時,數據能修改嘛? ?Redis接住操作系統的寫時復制技術(copy-on-write,COW),在執行快照的同時,正常處理寫操作。

    雖然bgsave執行不會阻塞主線程,但是頻繁執行全量快照也會帶來性能開銷。比如bgsave子進程需要通過fork操作從主線程創建出來,創建后不會阻塞主線程,但是創建過程是會阻塞主線程的??梢宰?strong>增量快照。

    • RDB的優點:與AOF相比,恢復大數據集的時候會更快,它適合大規模的數據恢復場景,如備份,全量復制等

    • 缺點:沒辦法做到實時持久化/秒級持久化。

    Redis4.0開始支持RDB和AOF的混合持久化,就是內存快照以一定頻率執行,兩次快照之間,再使用AOF記錄這期間的所有命令操作。

    9.3 如何選擇RDB和AOF

    • 如果數據不能丟失,RDB和AOF混用

    • 如果只作為緩存使用,可以承受幾分鐘的數據丟失的話,可以只使用RDB。

    • 如果只使用AOF,優先使用everysec的寫回策略。

    10. Redis 主從同步是怎樣的過程?

    Redis主從同步包括三個階段。

    第一階段:主從庫間建立連接、協商同步。

    • 從庫向主庫發送psync 命令,告訴它要進行數據同步。

    • 主庫收到 psync 命令后,響應FULLRESYNC命令(它表示第一次復制采用的是全量復制),并帶上主庫runID和主庫目前的復制進度offset。

    第二階段:主庫把數據同步到從庫,從庫收到數據后,完成本地加載。

    • 主庫執行bgsave命令,生成RDB文件,接著將文件發給從庫。從庫接收到RDB 文件后,會先清空當前數據庫,然后加載 RDB 文件。

    • 主庫把數據同步到從庫的過程中,新來的寫操作,會記錄到replication buffer。

    第三階段,主庫把新寫的命令,發送到從庫。

    • 主庫完成RDB發送后,會把replication buffer中的修改操作發給從庫,從庫再重新執行這些操作。這樣主從庫就實現同步啦。

    11. 聊聊Redis的zset,它是怎么實現的?

    zset是Redis常用數據類型之一,它的成員是有序排列的,一般用于排行榜類型的業務場景,比如 QQ 音樂排行榜、禮物排行榜等等。

    • 它的簡單格式舉例:zadd key score member [score member ...],zrank key member

    • 它的底層內部編碼:ziplist(壓縮列表)、skiplist(跳躍表)

    當 zset 滿足以下條件時使用壓縮列表

    • 當成員的數量小于128 個;

    • 每個 member (成員)的字符串長度都小于 64 個字節。

    壓縮列表做簡單介紹,它由以下五部分組成

    • zlbytes 是一個無符號整數,表示當前ziplist占用的總字節數;

    • zltail 指的是壓縮列表尾部元素相對于壓縮列表起始元素的偏移量。

    • zllen 指 ziplist 中 entry 的數量。當 zllen 比2^16 - 2大時,需要完全遍歷 entry 列表來獲取 entry 的總數目。

    • entry 用來存放具體的數據項(score和member),長度不定,可以是字節數組或整數,entry 會根據成員的數量自動擴容。-zlend 是一個單字節的特殊值,等于 255,起到標識 ziplist 內存結束點的作用。

    skiplist(跳躍表)在鏈表的基礎上,增加了多級索引,通過索引位置的幾個跳轉,實現數據的快速定位,其插入、刪除、查找的時間復雜度均為 O(logN)。

    12. Redis 過期策略和內存淘汰策略

    12.1 Redis的過期策略

    我們在set key的時候,可以給它設置一個過期時間,比如expire key 60。指定這key60s后過期,60s后,redis是如何處理的嘛?我們先來介紹幾種過期策略哈:

    一般有定時過期、惰性過期、定期過期三種。

    • 定時過期

    每個設置過期時間的key都需要創建一個定時器,到過期時間就會立即對key進行清除。該策略可以立即清除過期的數據,對內存很友好;但是會占用大量的CPU資源去處理過期的數據,從而影響緩存的響應時間和吞吐量。

    • 惰性過期

    只有當訪問一個key時,才會判斷該key是否已過期,過期則清除。該策略可以最大化地節省CPU資源,卻對內存非常不友好。極端情況可能出現大量的過期key沒有再次被訪問,從而不會被清除,占用大量內存。

    • 定期過期

    每隔一定的時間,會掃描一定數量的數據庫的expires字典中一定數量的key,并清除其中已過期的key。該策略是前兩者的一個折中方案。通過調整定時掃描的時間間隔和每次掃描的限定耗時,可以在不同情況下使得CPU和內存資源達到最優的平衡效果。

    expires字典會保存所有設置了過期時間的key的過期時間數據,其中,key是指向鍵空間中的某個鍵的指針,value是該鍵的毫秒精度的UNIX時間戳表示的過期時間。鍵空間是指該Redis集群中保存的所有鍵。

    Redis中同時使用了惰性過期和定期過期兩種過期策略。

    • 假設Redis當前存放30萬個key,并且都設置了過期時間,如果你每隔100ms就去檢查這全部的key,CPU負載會特別高,最后可能會掛掉。

    • 因此,redis采取的是定期過期,每隔100ms就隨機抽取一定數量的key來檢查和刪除的。

    • 但是呢,最后可能會有很多已經過期的key沒被刪除。這時候,redis采用惰性刪除。在你獲取某個key的時候,redis會檢查一下,這個key如果設置了過期時間并且已經過期了,此時就會刪除。

    但是呀,如果定期刪除漏掉了很多過期的key,然后也沒走惰性刪除。就會有很多過期key積在內存內存,直接會導致內存爆的?;蛘哂行r候,業務量大起來了,redis的key被大量使用,內存直接不夠了,運維小哥哥也忘記加大內存了。難道redis直接這樣掛掉?不會的!Redis用8種內存淘汰策略保護自己~

    12.2 Redis 內存淘汰策略

    • volatile-lru:當內存不足以容納新寫入數據時,從設置了過期時間的key中使用LRU(最近最少使用)算法進行淘汰;

    • allkeys-lru:當內存不足以容納新寫入數據時,從所有key中使用LRU(最近最少使用)算法進行淘汰。

    • volatile-lfu:4.0版本新增,當內存不足以容納新寫入數據時,在過期的key中,使用LFU(最少訪問算法)進行刪除key。

    • allkeys-lfu:4.0版本新增,當內存不足以容納新寫入數據時,從所有key中使用LFU算法進行淘汰;

    • volatile-random:當內存不足以容納新寫入數據時,從設置了過期時間的key中,隨機淘汰數據;。

    • allkeys-random:當內存不足以容納新寫入數據時,從所有key中隨機淘汰數據。

    • volatile-ttl:當內存不足以容納新寫入數據時,在設置了過期時間的key中,根據過期時間進行淘汰,越早過期的優先被淘汰;

    • noeviction:默認策略,當內存不足以容納新寫入數據時,新寫入操作會報錯。

    13. Hashmap 是怎樣實現的?為什么要用紅黑樹,而不用平衡二叉樹?為什么在1.8中鏈表大于8時會轉紅黑樹?HashMap是線性安全的嘛?如何保證安全?

    13.1 Hashmap 是怎樣實現的?

    • JDK1.7 Hashmap的底層數據結構是數組+鏈表

    • JDK1.8 Hashmap的底層數據結構是數組+鏈表+紅黑樹

    數據元素通過映射關系,即散列函數,映射到桶數組對應索引的位置,插入該位置時,如果發生沖突,從沖突的位置拉一個鏈表,把沖突元素放到鏈表。如果鏈表長度>8且數組大小>=64,鏈表轉為紅黑樹 如果紅黑樹節點個數<6 ,轉為鏈表。

    13.2 為什么要用紅黑樹,為什么不用二叉樹?為什么不用平衡二叉樹?

    為什么不用二叉樹?

    紅黑樹是一種平衡的二叉樹,其插入、刪除、查找的最壞時間復雜度都為 O(logn),避免了二叉樹最壞情況下的O(n)時間復雜度。

    為什么不用平衡二叉樹?

    平衡二叉樹是比紅黑樹更嚴格的平衡樹,為了保持保持平衡,需要旋轉的次數更多,也就是說平衡二叉樹保持平衡的效率更低,所以平衡二叉樹插入和刪除的效率比紅黑樹要低。

    13.3 為什么在1.8中鏈表大于8時會轉紅黑樹?

    紅黑樹的平均查找長度是log(n),如果長度為8,平均查找長度為log(8)=3,鏈表的平均查找長度為n/2,當長度為8時,平均查找長度為8/2=4,這才有轉換成樹的必要;鏈表長度如果是小于等于6,6/2=3,而log(6)=2.6,雖然速度也很快的,但是轉化為樹結構和生成樹的時間并不會太短。

    13.4 HashMap是線性安全的嘛?如何保證安全?

    HashMap不是線程安全的,多線程下擴容死循環??梢允褂肏ashTable、Collections.synchronizedMap、以及 ConcurrentHashMap 可以實現線程安全。

    • HashTable 是在每個方法加上 synchronized 關鍵字,粒度比較大;

    • Collections.synchronizedMap 是使用 Collections 集合工具的內部類,通過傳入 Map 封裝出一個 SynchronizedMap 對象,內部定義了一個對象鎖,方法內通過對象鎖實現;

    • ConcurrentHashMap 在jdk1.7中使用分段鎖,在jdk1.8中使用CAS+synchronized。

    14. select 和 epoll的區別

    14.1 IO多路復用之select

    應用進程通過調用select函數,可以同時監控多個fd,在select函數監控的fd中,只要有任何一個數據狀態準備就緒了,select函數就會返回可讀狀態,這時應用進程再發起recvfrom請求去讀取數據。

    非阻塞IO模型(NIO)中,需要N(N>=1)次輪詢系統調用,然而借助select的IO多路復用模型,只需要發起一次詢問就夠了,大大優化了性能。

    但是呢,select有幾個缺點:

    • 監聽的IO最大連接數有限,在Linux系統上一般為1024。

    • select函數返回后,是通過遍歷fdset,找到就緒的描述符fd。(僅知道有I/O事件發生,卻不知是哪幾個流,所以遍歷所有流)

    • 因為存在連接數限制,所以后來又提出了poll。與select相比,poll解決了連接數限制問題。但是呢,select和poll一樣,還是需要通過遍歷文件描述符來獲取已經就緒的socket。如果同時連接的大量客戶端,在一時刻可能只有極少處于就緒狀態,伴隨著監視的描述符數量的增長,效率也會線性下降。

    14.2 IO多路復用之epoll

    為了解決select/poll存在的問題,多路復用模型epoll誕生,它采用事件驅動來實現,流程圖如下:

    epoll先通過epoll_ctl()來注冊一個fd(文件描述符),一旦基于某個fd就緒時,內核會采用回調機制,迅速激活這個fd,當進程調用epoll_wait()時便得到通知。這里去掉了遍歷文件描述符的坑爹操作,而是采用監聽事件回調的機制。這就是epoll的亮點。

    一下select、poll、epoll的區別


    selectpollepoll
    底層數據結構數組鏈表紅黑樹和雙鏈表
    獲取就緒的fd遍歷遍歷事件回調
    事件復雜度O(n)O(n)O(1)
    最大連接數1024無限制無限制
    fd數據拷貝每次調用select,需要將fd數據從用戶空間拷貝到內核空間每次調用poll,需要將fd數據從用戶空間拷貝到內核空間使用內存映射(mmap),不需要從用戶空間頻繁拷貝fd數據到內核空間

    大家可以看我這篇文章哈:看一遍就理解:IO模型詳解

    15. http與https的區別,https的原理,如何加密的?

    http與https的區別

    思路: 這道題實際上考察的知識點是HTTP與HTTPS的區別,這個知識點非常重要,可以從安全性、數據是否加密、默認端口等這幾個方面去回答哈。其實,當你理解HTTPS的整個流程,就可以很好回答這個問題啦。

    HTTP,即超文本傳輸協議,是一個基于TCP/IP通信協議來傳遞明文數據的協議。HTTP會存在這幾個問題:

    • 請求信息是明文傳輸,容易被竊聽截取。

    • 沒有驗證對方身份,存在被冒充的風險

    • 數據的完整性未校驗,容易被中間人篡改

    為了解決Http存在的問題,Https出現啦。

    HTTPS= HTTP+SSL/TLS,可以理解Https是身披SSL(Secure Socket Layer,安全套接層)的HTTP。

    HTTP + HTTPS的區別

    https的原理,如何加密的

    • 客戶端發起Https請求,連接到服務器的443端口。

    • 服務器必須要有一套數字證書(證書內容有公鑰、證書頒發機構、失效日期等)。

    • 服務器將自己的數字證書發送給客戶端(公鑰在證書里面,私鑰由服務器持有)。

    • 客戶端收到數字證書之后,會驗證證書的合法性。如果證書驗證通過,就會生成一個隨機的對稱密鑰,用證書的公鑰加密。

    • 客戶端將公鑰加密后的密鑰發送到服務器。

    • 服務器接收到客戶端發來的密文密鑰之后,用自己之前保留的私鑰對其進行非對稱解密,解密之后就得到客戶端的密鑰,然后用客戶端密鑰對返回數據進行對稱加密,醬紫傳輸的數據都是密文啦。

    • 服務器將加密后的密文返回到客戶端。

    • 客戶端收到后,用自己的密鑰對其進行對稱解密,得到服務器返回的數據。

    16. Raft算法原理

    Raft 算法是分布式系統開發首選的共識算法,它通過“一切以領導者為準”的方式,實現一系列值的共識和各節點日志的一致。Raft 算法一共涉及三種角色(Follower、Candidate、Leader)和兩個過程(Leader選舉和日志復制)。

    16.1 ?Raft 角色

    跟隨者(Follower):,默默地接收和處理來自Leader的消息,當等待Leader心跳信息超時的時候,就主動站出來,推薦自己當候選人(Candidate)。

    候選人(Candidate):向其他節點發送投票請求,通知其他節點來投票,如果贏得了大多數(N/2+1)選票,就晉升領導(Leader)。

    領導者(Leader):負責處理客戶端請求,進行日志復制等操作,每一輪選舉的目標就是選出一個領導者;領導者會不斷地發送心跳信息,通知其他節點“我是領導者,我還活著,你們不要發起新的選舉,不用找個新領導者來替代我?!?/p>

    16.2 領導選舉過程

    1.在初始時,集群中所有的節點都是Follower狀態,都被設定一個隨機選舉超時時間(一般150ms-300ms):

    2. 如果Follower在規定的超時時間,都沒有收到來自Leader的心跳,它就發起選舉:將自己的狀態切為 Candidate,增加自己的任期編號,然后向集群中的其它Follower節點發送請求,詢問其是否選舉自己成為Leader

  • 其他節點收到候選人A的請求投票消息后,如果在編號為1的這屆任期內還沒有進行過投票,那么它將把選票投給節點A,并增加自己的任期編號:

  • 當收到來自集群中過半節點的接受投票后,A節點即成為本屆任期內 Leader,他將周期性地發送心跳消息,通知其他節點我是Leader,阻止Follower發起新的選舉:

  • 16.2 日志復制

    當有了leader,系統可以對外工作期啦??蛻舳说囊磺姓埱髞戆l送到leader,leader來調度這些并發請求的順序,并且保證leader與followers狀態的一致性。Leader接收到來自客戶端寫請求后,處理寫請求的過程其實就是一個日志復制的過程。

    日志項長什么樣呢?如下圖:

    請求完整過程:

  • 當系統leader收到一個來自客戶端的寫請求,就會添加一個log entry(日志項)到本地日志。

  • Leader通過日志復制(AppendEntries)RPC 消息,將日志項并行復制到集群其它Follower節點。

  • 如果Leader接收到大多數的“復制成功”響應后,它將日志項應用到自己的狀態機,并返回成功給客戶端。相反沒有收到大多數的“復制成功”響應,那么就返回錯誤給客戶端;

  • 當Follower接收到心跳信息,或者新的AppendEntries消息后,如果發現Leader已經提交了某條日志項,而自己還沒應用,那么Follower就會將這條日志項應用到本地的狀態機中。

  • Raft算法,Leader是通過強制Follower直接復制自己的日志項,來處理不一致日志,從而最終實現了集群各節點日志的一致。

    大家有興趣可以看這篇文章哈:分布式一致性:Raft算法原理[1](https://www.tpvlog.com/article/66)

    17. 消息中間件如何做到高可用

    消息中間件如何保證高可用呢?單機是沒有高可用可言的,高可用都是對集群來說的,一起看下kafka的高可用吧。

    Kafka 的基礎集群架構,由多個broker組成,每個broker都是一個節點。當你創建一個topic時,它可以劃分為多個partition,而每個partition放一部分數據,分別存在于不同的 broker 上。也就是說,一個 topic 的數據,是分散放在多個機器上的,每個機器就放一部分數據。

    有些伙伴可能有疑問,每個partition放一部分數據,如果對應的broker掛了,那這部分數據是不是就丟失了?那還談什么高可用呢?

    Kafka 0.8 之后,提供了復制品副本機制來保證高可用,即每個 partition 的數據都會同步到其它機器上,形成多個副本。然后所有的副本會選舉一個 leader 出來,讓leader去跟生產和消費者打交道,其他副本都是follower。寫數據時,leader 負責把數據同步給所有的follower,讀消息時, 直接讀 leader 上的數據即可。如何保證高可用的?就是假設某個 broker 宕機,這個broker上的partition 在其他機器上都有副本的。如果掛的是leader的broker呢?其他follower會重新選一個leader出來。

    18. 消息隊列怎么保證不丟消息的

    一個消息從生產者產生,到被消費者消費,主要經過這3個過程:

    因此如何保證MQ不丟失消息,可以從這三個階段闡述:

    • 生產者保證不丟消息

    • 存儲端不丟消息

    • 消費者不丟消息

    18.1 生產者保證不丟消息

    生產端如何保證不丟消息呢?確保生產的消息能到達存儲端。

    如果是RocketMQ消息中間件,Producer生產者提供了三種發送消息的方式,分別是:

    • 同步發送

    • 異步發送

    • 單向發送

    生產者要想發消息時保證消息不丟失,可以:

    • 采用同步方式發送,send消息方法返回成功狀態,就表示消息正常到達了存儲端Broker。

    • 如果send消息異常或者返回非成功狀態,可以重試

    • 可以使用事務消息,RocketMQ的事務消息機制就是為了保證零丟失來設計的

    18.2 存儲端不丟消息

    如何保證存儲端的消息不丟失呢?確保消息持久化到磁盤。大家很容易想到就是刷盤機制。

    刷盤機制分同步刷盤和異步刷盤

    • 生產者消息發過來時,只有持久化到磁盤,RocketMQ的存儲端Broker才返回一個成功的ACK響應,這就是同步刷盤。它保證消息不丟失,但是影響了性能。

    • 異步刷盤的話,只要消息寫入PageCache緩存,就返回一個成功的ACK響應。這樣提高了MQ的性能,但是如果這時候機器斷電了,就會丟失消息。

    Broker一般是集群部署的,有master主節點和slave從節點。消息到Broker存儲端,只有主節點和從節點都寫入成功,才反饋成功的ack給生產者。這就是同步復制,它保證了消息不丟失,但是降低了系統的吞吐量。與之對應的就是異步復制,只要消息寫入主節點成功,就返回成功的ack,它速度快,但是會有性能問題。

    18.3 消費階段不丟消息

    消費者執行完業務邏輯,再反饋會Broker說消費成功,這樣才可以保證消費階段不丟消息。

    19. Redis如何保證高可用?聊聊Redis的哨兵機制

    主從模式中,一旦主節點由于故障不能提供服務,需要人工將從節點晉升為主節點,同時還要通知應用方更新主節點地址。顯然,多數業務場景都不能接受這種故障處理方式。Redis從2.8開始正式提供了Redis Sentinel(哨兵)架構來解決這個問題。

    哨兵模式,由一個或多個Sentinel實例組成的Sentinel系統,它可以監視所有的Redis主節點和從節點,并在被監視的主節點進入下線狀態時,自動將下線主服務器屬下的某個從節點升級為新的主節點。但是呢,一個哨兵進程對Redis節點進行監控,就可能會出現問題(單點問題),因此,可以使用多個哨兵來進行監控Redis節點,并且各個哨兵之間還會進行監控。

    簡單來說,哨兵模式就三個作用:

    • 發送命令,等待Redis服務器(包括主服務器和從服務器)返回監控其運行狀態;

    • 哨兵監測到主節點宕機,會自動將從節點切換成主節點,然后通過發布訂閱模式通知其他的從節點,修改配置文件,讓它們切換主機;

    • 哨兵之間還會相互監控,從而達到高可用。

    故障切換的過程是怎樣的呢

    假設主服務器宕機,哨兵1先檢測到這個結果,系統并不會馬上進行 failover 過程,僅僅是哨兵1主觀的認為主服務器不可用,這個現象成為主觀下線。當后面的哨兵也檢測到主服務器不可用,并且數量達到一定值時,那么哨兵之間就會進行一次投票,投票的結果由一個哨兵發起,進行 failover 操作。切換成功后,就會通過發布訂閱模式,讓各個哨兵把自己監控的從服務器實現切換主機,這個過程稱為客觀下線。這樣對于客戶端而言,一切都是透明的。

    哨兵的工作模式如下:

  • 每個Sentinel以每秒鐘一次的頻率向它所知的Master,Slave以及其他Sentinel實例發送一個 PING命令。

  • 如果一個實例(instance)距離最后一次有效回復 PING 命令的時間超過 down-after-milliseconds 選項所指定的值, 則這個實例會被 Sentinel標記為主觀下線。

  • 如果一個Master被標記為主觀下線,則正在監視這個Master的所有 Sentinel 要以每秒一次的頻率確認Master的確進入了主觀下線狀態。

  • 當有足夠數量的 Sentinel(大于等于配置文件指定的值)在指定的時間范圍內確認Master的確進入了主觀下線狀態, 則Master會被標記為客觀下線。

  • 在一般情況下, 每個 Sentinel 會以每10秒一次的頻率向它已知的所有Master,Slave發送 INFO 命令。

  • 當Master被 Sentinel 標記為客觀下線時,Sentinel 向下線的 Master 的所有 Slave 發送 INFO 命令的頻率會從 10 秒一次改為每秒一次

  • 若沒有足夠數量的 Sentinel同意Master已經下線, Master的客觀下線狀態就會被移除;若Master 重新向 Sentinel 的 PING 命令返回有效回復, Master 的主觀下線狀態就會被移除。

  • 20. 無重復字符的最長子串

    給定一個字符串 s ,請你找出其中不含有重復字符的 最長子串 的長度。

    示例 1:

    輸入:?s?=?"abcabcbb" 輸出:?3? 解釋:?因為無重復字符的最長子串是?"abc",所以其長度為 3。

    示例 2:

    輸入:?s?=?"bbbbb" 輸出:?1 解釋:?因為無重復字符的最長子串是?"b",所以其長度為 1。

    這道題可以使用滑動窗口來實現?;瑒哟翱诰褪蔷S護一個窗口,不斷滑動,然后更新答案。

    滑動窗口的大致邏輯框架,偽代碼如下:

    int?left?=0,right?=?0; while?(right?<?s.size()){//增大窗口window.add(s[right]);right++;while?(window?needs?shrink){//縮小窗口window.remove?(s[left]);left?++;} }

    解法流程如下:

    • 首先呢,就是獲取原字符串的長度。

    • 接著維護一個窗口(數組、哈希、隊列)

    • 窗口一步一步向右擴展

    • 窗口在向右擴展滑動過程,需要判斷左邊是否需要縮減

    • 最后比較更新答案

    完整代碼如下:

    int?lengthOfLongestSubstring(String?s){//獲取原字符串的長度int?len?=?s.length();//維護一個哈希集合的窗口Set<Character>?windows?=?new?HashSet<>();int?left=0,right?=0;int?res?=0;while(right<len){char?c?=?s.charAt(right);//窗口右移right++;//判斷是否左邊窗口需要縮減,如果已經包含,那就需要縮減while(windows.contains(c)){windows.remove(s.charAt(left));left++;}windows.add(c);//比較更新答案res?=?Math.max(res,windows.size());}return?res; }

    之前寫過一篇滑動窗口解析,大家有興趣可以看下哈:

    leetcode必備算法:聊聊滑動窗口

    參考與感謝

    • 分布式理論之分布式一致性:Raft算法原理[2]

    • 一文搞懂Raft算法[3]

    參考資料

    [1]

    分布式一致性:Raft算法原理: https://www.tpvlog.com/article/66

    [2]

    分布式理論之分布式一致性:Raft算法原理: https://www.tpvlog.com/article/66

    [3]

    一文搞懂Raft算法: https://www.cnblogs.com/xybaby/p/10124083.html

    覺得本文有幫助的話,點個贊、在看、分享

    總結

    以上是生活随笔為你收集整理的Java夺命21连问!(附答案)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    亚洲一区二区三区91 | 欧美国产高清 | 欧美日韩激情视频8区 | 91天天操 | 麻豆91在线 | 久久免费精品国产 | 亚洲在线高清 | av三级在线播放 | 91精品国产成人www | 91精品国产91热久久久做人人 | 日韩电影中文 | 免费男女羞羞的视频网站中文字幕 | 黄色软件视频大全免费下载 | 日本久久电影网 | 正在播放国产一区二区 | 91免费试看| 精品久久99 | 免费观看性生交大片3 | 国产 日韩 中文字幕 | 99热官网| 韩日电影在线观看 | 91精品久久久久久粉嫩 | 一区 二区电影免费在线观看 | 国产成人精品午夜在线播放 | 国产黄色成人 | 欧美一级特黄高清视频 | 国产亚洲精品电影 | 亚洲精品资源在线观看 | 激情综合五月婷婷 | 免费亚洲黄色 | 欧美日韩另类视频 | 国产精品福利午夜在线观看 | 成人免费 在线播放 | 精品电影一区二区 | 国模吧一区 | 最新日韩在线观看视频 | 久久不射电影网 | 少妇超碰在线 | 天天色成人网 | 国产精品综合av一区二区国产馆 | 婷婷色av | 99色在线视频 | 激情电影在线观看 | 99av在线视频 | 97国产电影 | 色综合久久久久 | 午夜性生活 | 日韩免费在线播放 | 奇米网8888 | 69av视频在线| 久久久久一区二区三区四区 | 999在线精品 | 欧美大片在线观看一区 | 蜜臀aⅴ精品一区二区三区 久久视屏网 | 久久九九网站 | 亚洲国产伊人 | 国产精品毛片一区二区 | 国产精品久久久视频 | 精品亚洲免费 | 99久久精品国产一区二区成人 | 亚洲最大av在线播放 | a黄色| 精品嫩模福利一区二区蜜臀 | 欧美日韩调教 | 最新国产精品拍自在线播放 | 婷婷色综合网 | 99热精品在线 | 最近中文字幕mv | 日韩欧美视频一区 | 主播av在线| 超碰电影在线观看 | 日韩精品一区二区三区电影 | 日韩免费电影一区二区三区 | 日本3级在线观看 | 久久久精品免费看 | 99精品在线播放 | 日韩高清在线不卡 | 人人插人人爱 | 久久99深爱久久99精品 | 99视频在线免费 | 精品在线一区二区 | 国产一卡久久电影永久 | 亚洲婷婷网 | 日韩在线视频一区 | 亚洲九九影院 | 精品高清美女精品国产区 | 国产又粗又硬又爽视频 | 免费91麻豆精品国产自产在线观看 | 日韩av电影国产 | 婷婷在线免费观看 | 九九久久久久99精品 | 激情综合五月天 | 国产精品视频地址 | 91久久在线观看 | 国产91欧美 | 三级在线视频播放 | 日本一区二区不卡高清 | 欧洲精品码一区二区三区免费看 | 99视频| 成人av片在线观看 | 亚洲精品免费在线视频 | 亚洲九九九在线观看 | 久久综合福利 | 夜夜躁日日躁狠狠躁 | 欧美成人中文字幕 | 草久视频在线观看 | 国产在线精品一区二区三区 | 国产欧美在线一区二区三区 | 天天做天天干 | av中文字幕在线观看网站 | 久久综合久色欧美综合狠狠 | 激情影院在线 | 在线视频99 | 国产精品 国内视频 | 国产亚洲欧美精品久久久久久 | 亚洲精品一区二区三区新线路 | 最新av在线播放 | 3d黄动漫免费看 | 一区二区三区高清 | 有码中文在线 | 胖bbbb搡bbbb擦bbbb| 日韩一级片大全 | 最新超碰 | 最近中文字幕完整视频高清1 | 在线免费日韩 | 视频在线观看99 | 欧美一级性生活片 | 国产精品免费人成网站 | 亚洲人在线| 欧美一级特黄高清视频 | 日韩免费视频一区二区 | 中文字幕日韩在线播放 | 久久久久久久久久久久久久av | 国产一区电影在线观看 | 狠狠干天天射 | 国产99久久久国产精品成人免费 | 97超碰人人澡人人爱 | 涩五月婷婷 | 日韩精品电影在线播放 | 精品一二 | 奇米7777狠狠狠琪琪视频 | av在线亚洲天堂 | 午夜精品一区二区三区在线播放 | 欧美一级特黄高清视频 | a级国产乱理伦片在线观看 亚洲3级 | 久草网视频 | 操操操影院| 亚洲va欧美va国产va黑人 | 国产精品久久久久三级 | 色噜噜噜 | 毛片网站免费 | 日韩字幕在线观看 | 成人a v视频 | 97在线精品国自产拍中文 | 最新婷婷色 | 亚洲精品综合在线观看 | 成人免费视频在线观看 | 99爱精品在线| 国精产品999国精产品岳 | 午夜视频一区二区三区 | 一区二区三区国产欧美 | 久久久久久久久久伊人 | 亚洲 欧洲av | 色干干| 在线电影播放 | 天天色影院 | 久久婷五月 | 在线免费观看国产黄色 | 亚洲三级黄色 | 日本公妇色中文字幕 | 三级黄免费看 | 超碰免费成人 | 亚洲黄色区 | 国产精品福利在线 | 久久任你操| 国产精品亚洲精品 | 操碰av| 日韩av有码在线 | 天天干,天天草 | www.色的| 久久免费国产电影 | 国产97在线观看 | 久久久资源 | 人人舔人人爽 | 青青河边草免费直播 | 国产一区二区手机在线观看 | 国产中文| 国产精品久久久久免费a∨ 欧美一级性生活片 | 日韩系列在线观看 | 在线观看日韩 | 中文字幕久久精品一区 | 国产日韩欧美视频在线观看 | 91最新中文字幕 | 欧美福利片在线观看 | 日韩av一区在线观看 | 99热精品国产一区二区在线观看 | 亚洲欧洲av在线 | 最新一区二区三区 | 日韩精品专区在线影院重磅 | 国产黄色av网站 | 亚洲第一区在线观看 | 国产视频在线一区二区 | 正在播放国产一区 | 亚洲精品天天 | 国产精品久久久久一区二区 | 亚洲精品日韩在线观看 | 97碰在线视频 | 69精品视频 | 亚洲欧美日韩一区二区三区在线观看 | 国产免费美女 | 色操插| 一区二区三区视频网站 | 国产精品美女在线观看 | 欧美三级免费 | 色资源二区在线视频 | 欧美性受极品xxxx喷水 | 国产无区一区二区三麻豆 | 亚洲乱码国产乱码精品天美传媒 | 91丨九色丨丝袜 | 日韩视频中文字幕在线观看 | 久久夜色精品亚洲噜噜国4 午夜视频在线观看欧美 | 久久视频精品在线观看 | 久久久久久国产精品999 | 日韩综合在线观看 | 精品亚洲欧美无人区乱码 | 日韩久久精品一区二区三区下载 | 日韩有码欧美 | 天天久久综合 | 一区在线观看 | 手机看片国产日韩 | 国产精品麻豆免费版 | 天天综合成人 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 久黄色 | 亚洲成人第一区 | 五月天婷亚洲天综合网鲁鲁鲁 | 欧美尹人 | 久久不卡免费视频 | 国产精品久久久久久久久久久不卡 | 免费观看mv大片高清 | 一色屋精品视频在线观看 | 黄色a一级视频 | 亚洲国产福利视频 | 激情视频免费观看 | 视频一区二区在线 | 色久av| 国产精品一区电影 | 精品视频 | 国色天香在线 | 98超碰在线 | 中文字幕网站视频在线 | 密桃av在线 | 婷婷中文在线 | 国产精品黄 | 国产伦精品一区二区三区四区视频 | 亚洲综合在线观看视频 | 久久久久久久免费观看 | 欧美激情综合色综合啪啪五月 | 五月天天在线 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 波多野结衣小视频 | 97韩国电影 | 国产黄在线看 | 亚洲欧美日韩国产精品一区午夜 | 99久久综合国产精品二区 | 久久久久久久久久久久电影 | 国产成人久久 | 午夜影视一区 | 91视频久久久久 | 日韩视频免费观看高清 | 97福利在线观看 | 午夜视频在线观看网站 | 在线亚洲人成电影网站色www | 亚洲精品伦理在线 | 成人av在线直播 | 日韩色一区二区三区 | 一本一本久久a久久精品牛牛影视 | 欧美激情视频三区 | 久久免费视频网站 | 欧美analxxxx | av福利在线导航 | 国产精品99久久久久久人免费 | 在线观看日本韩国电影 | 在线小视频你懂得 | 免费看三片 | 色综合亚洲精品激情狠狠 | 成人中心免费视频 | 国产五十路毛片 | 亚洲电影网站 | 欧美激情综合五月色丁香 | 国产精品精品视频 | 日韩成人xxxx| 免费观看国产视频 | 久草在线精品观看 | 天天爱综合 | 97超碰成人在线 | 色偷偷男人的天堂av | 97av精品| 韩国精品一区二区三区六区色诱 | 日韩成人免费在线观看 | av在线影片 | 国产精品二区三区 | 国产aa免费视频 | 人人模人人爽 | 久久久激情视频 | 成人夜晚看av | 国产视频1| 久久视频在线看 | 玖玖在线观看视频 | 西西444www| 欧美日韩免费观看一区二区三区 | 五月婷丁香网 | 国产成人香蕉 | 少妇搡bbbb搡bbb搡69 | 国产手机在线 | 国产中文字幕在线 | 激情五月伊人 | 久久久久久久久久久黄色 | 日日夜夜骑 | 精品国产123 | 免费网站色 | 日韩电影在线视频 | 99这里精品 | 日本夜夜草视频网站 | 日韩三区在线观看 | 91插插插网站 | 国产精品免费在线视频 | 伊人天天狠天天添日日拍 | 日韩色视频在线观看 | 99999精品| 天天操天天色综合 | 国产黄网站在线观看 | 欧美中文字幕第一页 | 狠狠成人 | 国产精品99久久久久久宅男 | 国产高h视频 | 92中文资源在线 | 五月激情六月丁香 | 色综合天天做天天爱 | 狠狠躁日日躁狂躁夜夜躁 | 精品一区免费 | 片黄色毛片黄色毛片 | 黄色小说视频在线 | 免费av在线网站 | 99精品久久99久久久久 | 免费电影播放 | 超碰97久久| 亚洲精品一区二区三区高潮 | 国产亚洲精品久久久久久移动网络 | 天天天干天天射天天天操 | 国产在线观看你懂得 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 国产99久久久国产精品免费看 | 一区二区亚洲精品 | 91一区二区在线 | 国产中文a | 99久久婷婷国产综合精品 | av三级av | www久久九| 日韩中文字幕在线看 | 91日韩在线播放 | 成人午夜电影在线播放 | 婷婷精品国产欧美精品亚洲人人爽 | 国产美女网站在线观看 | 久久久久久久久久久综合 | 一区二区三区在线不卡 | 亚洲成a人片在线观看网站口工 | 91精品视频导航 | 婷婷网五月天 | 欧美成人影音 | 麻豆国产在线视频 | 国产一区二区在线免费观看 | 久久综合色天天久久综合图片 | 99久久国产免费,99久久国产免费大片 | 午夜婷婷在线播放 | 中文字幕在线看人 | 久久国产精品99国产 | 欧美午夜a | 欧美日韩国产色综合一二三四 | 开心激情久久 | 91视视频在线直接观看在线看网页在线看 | 国产片免费在线观看视频 | 福利一区二区在线 | 国产精品免费高清 | a电影免费看 | 免费av电影网站 | 中文av在线播放 | 91九色视频导航 | 一本一本久久a久久精品综合 | 日韩精品一区二区三区丰满 | 天天色视频| 成人av网站在线 | 亚洲视频第一页 | 久久爱资源网 | 免费在线观看成人av | 观看免费av | 日韩在线视频二区 | 在线观看中文字幕第一页 | 国外调教视频网站 | 亚洲精品456在线播放乱码 | 久久激情综合 | 亚洲www天堂com | 一区二区三区四区五区六区 | 中文字幕高清有码 | 国产一级二级在线播放 | 91精品国产91久久久久久三级 | 中文永久免费观看 | 亚洲精品免费在线观看视频 | 米奇影视7777 | 中文字幕 国产精品 | 国产免费又粗又猛又爽 | 国产精品中文在线 | 免费福利片2019潦草影视午夜 | 婷婷电影在线观看 | 在线高清av | 超碰在线中文字幕 | 9i看片成人免费看片 | 中文字幕一区二区三区久久蜜桃 | 黄色软件在线观看免费 | av中文字幕电影 | 免费看av片网站 | 黄色a在线观看 | 欧美做受高潮1 | 国产欧美久久久精品影院 | 久精品在线观看 | 久久视频这里只有精品 | 亚洲精品小区久久久久久 | 欧美专区国产专区 | 成人av视屏 | 中文字幕一二 | 一区二区三区四区不卡 | 在线观看韩国av | av黄色免费网站 | 午夜a区| 在线小视频 | 国产黄a三级三级三级三级三级 | 91在线精品秘密一区二区 | 日本精品中文字幕在线观看 | 亚洲资源在线观看 | 日韩一区二区免费在线观看 | 国产a网站 | 国产精品福利小视频 | 欧美日韩高清一区二区 国产亚洲免费看 | 精品国产精品久久一区免费式 | 国产亲近乱来精品 | 91久久奴性调教 | 国产在线国偷精品产拍 | 欧美激情视频一二三区 | 91成人亚洲| 免费麻豆网站 | 黄色成人影院 | 国产精品久久久久av免费 | 国产美女精彩久久 | 片网站| 日本久久成人中文字幕电影 | 久久精品免费观看 | 国产国语在线 | 久久最新网址 | 久久精品久久精品久久39 | av成人在线网站 | 日本免费一二三区 | 97电影网站 | 国产精品午夜久久 | 色久av | 日韩中出在线 | 亚洲日本一区二区在线 | 免费婷婷| www.色就是色 | 国产不卡视频 | 最近更新的中文字幕 | 91精品国产91 | 91欧美日韩国产 | 日日夜夜天天 | 亚洲春色综合另类校园电影 | 一区二区网 | 欧美91视频| 久久婷婷丁香 | 91爱爱免费观看 | 亚洲视频免费在线看 | 久久精品中文字幕少妇 | 国产123av| 国产色在线观看 | 成人97视频一区二区 | 69精品久久 | 又色又爽的网站 | 在线免费观看黄色 | 亚洲一区不卡视频 | 久久久免费少妇 | 亚洲黄色片 | 婷婷av网 | 精品美女久久久久 | 西西444www大胆高清图片 | 青青草华人在线视频 | 18女毛片| 久久草精品 | 少妇性bbb搡bbb爽爽爽欧美 | 日韩一区二区免费在线观看 | 五月天天天操 | 综合久久久久久久 | 99这里只有精品视频 | 中文字幕 在线 一 二 | 久久久久免费看 | 欧美91视频| 亚洲免费精品一区二区 | 夜夜操天天干 | 国产精品久久片 | 男女日麻批 | 500部大龄熟乱视频 欧美日本三级 | 综合久久网 | 日本三级在线观看中文字 | 天天操天天操天天操 | 在线观看视频日韩 | 午夜精品一区二区三区在线播放 | 91精品久久久久久久久久入口 | 夜夜夜影院 | 天天色天天射天天综合网 | 天天爱天天插 | 在线免费视频一区 | 在线播放视频一区 | av在线免费网站 | 久久激五月天综合精品 | 国产又粗又硬又长又爽的视频 | 欧美另类视频 | 成人h电影 | 久久99中文字幕 | 免费黄色网止 | 日韩在线理论 | 精品成人国产 | 射久久久| av在线播放中文字幕 | 成人黄色在线 | 91精品福利在线 | a级片网站 | 亚洲欧洲成人精品av97 | 午夜免费福利视频 | 欧美日韩在线免费视频 | 成人高清av在线 | 精品国产乱码久久久久久三级人 | 久久伊人色综合 | 亚洲一区二区三区在线看 | 亚洲三级在线播放 | 一级电影免费在线观看 | 欧美性视频网站 | 久久久久一区二区三区四区 | 91视频 - 114av| 成人综合婷婷国产精品久久免费 | 国产第一页在线播放 | 日韩免费电影网站 | 中文字幕在线免费看 | www婷婷 | 久久久久久国产精品亚洲78 | 免费成人在线电影 | 91欧美视频网站 | 欧美成人一区二区 | 亚州激情视频 | 日韩久久精品一区二区 | 免费观看一区二区 | 国产 欧美 日产久久 | 国产亚洲成人网 | 在线免费av网 | 欧美日本三级 | 午夜久久视频 | 久久久久福利视频 | 91麻豆精品国产91久久久更新时间 | 在线中文字幕视频 | 日韩av视屏 | 国语久久 | 亚洲国产精品久久久 | 中文字幕一二三区 | 在线香蕉视频 | 中文字幕在线观看第一页 | 五月天综合 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 国产成人精品久 | 日韩中文字幕免费在线观看 | 国内精品视频免费 | 最新日本中文字幕 | 91色在线观看 | 国产专区精品视频 | av日韩av| 亚洲伊人色 | 国产一级视频在线 | 久久丁香网| 久久久久久久久久久久久久免费看 | 国产精品久久久久久999 | 日韩夜夜爽 | 中文亚洲欧美日韩 | 成人a级大片 | 亚洲天天摸日日摸天天欢 | 丝袜美腿亚洲综合 | 日日干网址 | 久久一区国产 | 亚洲精品视频www | 久久精品视频免费播放 | 亚洲一区视频在线播放 | 天天操月月操 | 国产精品一区二区免费 | 亚洲毛片久久 | 岛国av在线 | 日本久久久久 | 最近中文字幕大全 | 国产 一区二区三区 在线 | 久久网址| 91色吧| 精品999国产| 91大片网站| 久久成人精品视频 | 最新av在线播放 | 99久久婷婷国产一区二区三区 | 在线观看自拍 | 亚洲综合小说 | 欧美不卡在线 | 久久手机精品视频 | 99国产精品免费网站 | 亚洲国产丝袜在线观看 | 91视频91自拍 | 亚洲日本在线一区 | 亚洲午夜精品久久久久久久久 | 一区 二区 精品 | 国产美女视频免费观看的网站 | 国产v在线观看 | 夜夜躁日日躁狠狠躁 | 国产成人精品女人久久久 | 六月丁香伊人 | 亚洲国产精品视频在线观看 | 精品在线一区二区三区 | 九九久久国产 | 午夜18视频在线观看 | 婷婷丁香久久五月婷婷 | 久久er99热精品一区二区 | 日韩av在线不卡 | 亚洲午夜激情网 | 玖玖国产精品视频 | 色香com.| 五月激情久久 | 日韩1级片 | 国产91影视| 亚洲精品国产精品久久99热 | 国产精品都在这里 | 久久国产精品小视频 | 色婷婷88av视频一二三区 | av电影中文字幕在线观看 | 日韩精品久久久免费观看夜色 | 日韩色一区二区三区 | 91原创在线观看 | 中文国产字幕 | 国产主播99| 精品久久久久免费极品大片 | 激情婷婷综合网 | 在线观看视频一区二区三区 | 福利二区视频 | 精品在线观看免费 | 91精品欧美 | 久久一区二区三区日韩 | 国产亚洲久一区二区 | 国产精品第一 | 特级西西444www大胆高清无视频 | 亚洲精品视频在线播放 | 国产精品手机播放 | av电影在线观看 | 国产网红在线观看 | 99久久综合精品五月天 | 九九热有精品 | 日日躁夜夜躁xxxxaaaa | 91免费黄视频 | h视频在线看 | 五月的婷婷 | 91高清在线| 青青草国产精品视频 | 久久久久久久久久久网 | 国产专区一 | 久久福利 | 色综合久久五月天 | 99久久精品国产欧美主题曲 | 中文字幕视频 | 亚洲精品免费视频 | 一级黄网 | 精品一区二区日韩 | 人人爽影院 | 久热爱| 成人在线视频观看 | 久久er99热精品一区二区三区 | 97超级碰碰碰碰久久久久 | 毛片网站在线观看 | 欧美日一级片 | 91视频 - 88av | 超碰日韩| 久久国产精品99久久人人澡 | 国产亚洲精品成人 | 天天曰天天 | 夜夜躁日日躁狠狠久久av | 日韩精品免费一区二区三区 | 一级成人免费视频 | 国产精品99久久久久久武松影视 | 国产精品色婷婷 | 久久久久久久久久网站 | 91香蕉视频 | 久久伊人精品天天 | 国产精品久久久精品 | 国产精品成人在线观看 | 天天天干 | 欧美成人亚洲成人 | 美女精品在线观看 | 色插综合| 激情欧美一区二区三区免费看 | 91精选| 91aaa在线观看| 久久亚洲福利视频 | 18做爰免费视频网站 | 亚洲精品国产精品乱码在线观看 | 精品黄色视| 91精品国产自产在线观看 | 免费久久久久久 | 香蕉一区 | 国产成人免费观看久久久 | 波多野结衣在线观看一区二区三区 | 国产精品av在线免费观看 | 国产精品久久久久久久久婷婷 | 免费在线激情视频 | 91字幕 | 日日干影院 | 操操操夜夜操 | www.xxx.性狂虐 | 国产视频中文字幕在线观看 | 日韩有码中文字幕在线 | 免费看黄电影 | 看全黄大色黄大片 | 欧美韩国日本在线 | 日韩资源在线观看 | 五月婷婷导航 | 亚洲a在线观看 | 欧美日韩在线视频免费 | 最新黄色av网址 | 亚洲天天摸日日摸天天欢 | 久久一区二区免费视频 | 欧美精品久久 | av高清影院 | 亚洲精品视频二区 | 91免费看片黄 | 96久久欧美麻豆网站 | 91精品啪在线观看国产81旧版 | 日韩精品资源 | 在线 你懂 | 99久久精品国产一区二区成人 | 一级免费av| www,黄视频 | 91入口在线观看 | 天天干夜夜操视频 | 欧美a级片免费看 | 成年人视频在线免费观看 | 亚洲无吗av| 亚洲免费一级电影 | 中文字幕乱码日本亚洲一区二区 | 国产成人免费网站 | 免费a一级 | 日批视频 | 日韩精品在线观看视频 | 黄色片网站大全 | 天天夜操| 日韩精品亚洲专区在线观看 | 四虎伊人 | 中文字幕在线日本 | 制服丝袜一区二区 | 中文字幕在线观看完整 | 成人18视频| av在观看| 国产精品一区二区三区久久久 | 日韩 国产 | 国产精品久久久久久久久久免费看 | 97人人添人澡人人爽超碰动图 | 欧美伦理一区 | 婷婷社区五月天 | 国产精品乱码久久久 | 亚洲 成人 欧美 | 亚洲第二色 | 欧美日韩有码 | 91在线免费播放 | 91亚洲精品国偷拍 | 色99之美女主播在线视频 | 香蕉视频在线观看免费 | 在线综合色| 国产日韩在线看 | 亚洲精品国产自产拍在线观看 | 亚洲精品在线视频 | 国产69久久久 | 久久1电影院 | 亚洲少妇久久 | 日本xxxx.com | 韩国在线视频一区 | 97超碰免费| 深爱激情五月婷婷 | 欧美精品999 | 在线观看久久 | 国产一级大片在线观看 | 久久这里只有精品首页 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 99久精品 | 国产精品va在线观看入 | 欧美一区在线看 | 亚洲高清久久久 | 日韩电影精品 | 色婷婷97 | 手机在线黄色网址 | 亚洲精品一区二区在线观看 | 色婷婷久久一区二区 | 99久久99视频只有精品 | 天天爽夜夜爽人人爽一区二区 | 日韩网站在线看片你懂的 | 色亚洲激情 | www.久久久.cum| 欧美另类sm图片 | 国产亚洲永久域名 | 午夜精品一区二区三区视频免费看 | 成年人看片网站 | 黄色免费网站 | 久一久久 | 91视频国产免费 | 国产精品欧美久久久久三级 | 亚洲.www| 在线欧美小视频 | 久久久久中文 | 国产精品久久久久久一区二区 | 久久久久久视频 | 五月婷婷色丁香 | 久草剧场 | 特级a毛片| 国产不卡免费 | 中文字幕一区二区三区在线观看 | 国产精品第 | 91超碰免费在线 | 久久视频国产 | 最新av电影网址 | 国产精品9999久久久久仙踪林 | 不卡电影一区二区三区 | 91最新地址永久入口 | 亚洲三级国产 | 日韩中文字幕免费 | 久久久久久久久久久高潮一区二区 | 亚洲综合色丁香婷婷六月图片 | 丁香九月婷婷综合 | 国产精品婷婷 | 亚洲在线激情 | 在线国产高清 | 精品一区二区在线免费观看 | 不卡av在线免费观看 | av中文天堂在线 | 99在线精品视频在线观看 | 亚洲激情网站免费观看 | 99久久国产免费,99久久国产免费大片 | 美女免费视频网站 | 精品国产一区二区三区日日嗨 | 97精品国产手机 | 精品日韩在线一区 | 国产精品久久久久久久午夜片 | 色99之美女主播在线视频 | 久久夜色电影 | 91精品久久久久久综合五月天 | 色久av | 国产精品99久久久久久久久久久久 | 一区 二区电影免费在线观看 | 国产精品一区二区三区久久久 | 日夜夜精品视频 | 国产成人三级一区二区在线观看一 | 五月开心六月婷婷 | 色视频 在线| 99精品国产视频 | 色综合久久88色综合天天人守婷 | 亚洲成av人影片在线观看 | 在线播放精品一区二区三区 | 成人黄色电影在线 | 精品国产欧美一区二区 | 日本精品中文字幕在线观看 | 久久在线免费观看 | 天天玩天天干天天操 | 久久久精品欧美一区二区免费 | 婷婷丁香花五月天 | 日韩手机在线 | 欧美狠狠操 | 久久久久国产精品免费网站 | 中文av资源站 | www.五月天婷婷 | а天堂中文最新一区二区三区 | 五月婷婷综合在线观看 | 国产精品原创 | 一区二区电影网 | 中文字幕在线观看1 | 国产精品久久久久久久久费观看 | 在线观看视频在线 | 最近字幕在线观看第一季 | 日本99热| 色伊人网 | 国产精品一区二区精品视频免费看 | 999久久国精品免费观看网站 | 亚洲精品小视频 | 久久电影网站中文字幕 | 91 在线视频 | 在线观看岛国av | 亚洲激情国产精品 | 国产高清视频色在线www | 精品高清视频 | 久久午夜剧场 | 午夜丁香网 | 91高清免费在线观看 | 日韩精品一区二区三区中文字幕 | 热久久最新地址 | av免费在线观看1 | 久久精品精品电影网 | 日韩网 | 欧美日产一区 | 91夫妻视频| 免费黄在线看 | 久久综合色影院 | 国内成人精品视频 | 精品你懂的 | av不卡中文 | 国产精品久久久久毛片大屁完整版 | 国产成人亚洲精品自产在线 | 亚州国产精品久久久 | 日韩色一区二区三区 | 久久久久久久久久网站 | 综合网av| 亚洲综合色丁香婷婷六月图片 | 99精品视频在线播放免费 | 久久精品国产精品亚洲 | 国产在线p | 亚洲,国产成人av | av免费网| 又湿又紧又大又爽a视频国产 | 中文字幕乱码亚洲精品一区 | 国产原创在线观看 | 久久亚洲福利视频 | 日韩欧美精品在线视频 | 丁香久久久 | 亚洲成人在线免费 | 91天堂素人约啪 | 日韩中文在线电影 | 亚洲一区视频免费观看 | 又黄又爽的免费高潮视频 | 特级西西444www大精品视频免费看 | 精品久久久久久久久久久久久久久久 | 日韩一区二区三区视频在线 | 粉嫩av一区二区三区四区五区 | 午夜精品电影 | 天天爽网站 | 亚洲成人精品久久久 | 国产精品久久久久久久婷婷 | 色5月婷婷 | 日韩成人免费在线电影 | 免费看黄电影 | 国产高清在线免费视频 | 综合国产视频 | 精品二区久久 | 亚洲在线网址 | 在线观看一区 | 久久久综合香蕉尹人综合网 | 美女黄网站视频免费 | 国产一级视频免费看 | 国产淫片免费看 | 很黄很污的视频网站 | 日本精a在线观看 | 亚洲男男gaygayxxxgv | 久久久久亚洲国产精品 | 免费看国产a | 91大神在线观看视频 | 精品在线观看一区二区三区 | 国产精品久久嫩一区二区免费 | av成人在线网站 | 69国产精品成人在线播放 | 27xxoo无遮挡动态视频 | 亚洲精品久久久久久国 | 字幕网av| av丝袜天堂 | 精品一区二区精品 | 天天艹天天| 六月婷色 | 精品国产资源 | www.久久婷婷 | 久久国产精品影片 | 热久久国产精品 | 亚洲欧美日本一区二区三区 | 欧美精品久 | 国产中文字幕网 | av在线亚洲天堂 | 国产精品久久久影视 | 天天综合五月天 | 中文字幕在线精品 | 香蕉久草在线 | 欧美激情综合五月色丁香 | 国产盗摄精品一区二区 | 国产精品美女久久久久aⅴ 干干夜夜 | 在线色亚洲 | 国产精品毛片久久久久久久 | 狠狠综合| 欧美日产一区 | 国产91在线免费视频 | 日韩欧美在线观看一区二区三区 | 99热国内精品 | 欧美一级黄色网 |