精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

一文帶你掌握SpringCloud高可用服務注冊中心Eureka

開發 前端
Eureka是Netflix的子模塊之一,也是一個核心的模塊,Eureka 采用了 C-S(客戶端/服務端)的設計架構,也就是 Eureka 由兩個組件組成:Eureka 服務端和 Eureka 客戶端。

[[396439]]

 什么是服務注冊?

服務注冊:將服務所在主機、端口、版本號、通信協議等信息登記到注冊中心上;

什么是服務發現?

服務發現:服務消費者向注冊中心請求已經登記的服務列表,然后得到某個服務的主機、端口、版本號、通信協議等信息,從而實現對具體服務的調用;

Eureka是什么?

Eureka是Netflix的子模塊之一,也是一個核心的模塊,Eureka 采用了 C-S(客戶端/服務端)的設計架構,也就是 Eureka 由兩個組件組成:Eureka 服務端和 Eureka 客戶端。

Eureka Server(一個獨立的項目) 用于注冊服務以及實現服務的負載平衡和故障轉移,它是服務的注冊中心,Eureka Client(我們的微服務) 它是用于與Eureka Server交互,獲取其上注冊的服務,使得交互變得非常簡單,只需要通過服務標識符即可拿到服務。

與spring-cloud的關系:

Eureka 是 Netflix 公司開發的(一家做版權視頻和云服務的公司),Spring Cloud 封裝了 Netflix 公司開發的Eureka 模塊來實現服務注冊和發現,也就是說 Spring Cloud 對 Netflix Eureka 做了二次封裝;

角色關系圖:

搭建與配置 Eureka 服務注冊中心

Spring Cloud 要使用 Eureka 注冊中心非常簡單和方便,Spring Cloud 中的Eureka 服務注冊中心實際上也是一個 Spring Boot 工程,我們只需通過引入相關依賴和注解配置就能讓 Spring Boot 構建的微服務應用輕松地與 Eureka 進行整合。

具體步驟如下:

1、創建一個 SpringBoot 項目,并且添加 SpringBoot 的相關依賴;

  1. 34-sprinGCloud-service-eureka 

2、添加 eureka 的依賴:

  1. <!--Spring Cloud 的 eureka-server 起步依賴--> 
  2.  
  3. <dependency> 
  4.  
  5. <groupId>org.springframework.cloud</groupId> 
  6.  
  7. <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> 
  8.  
  9. </dependency> 

 3、在 Spring Boot 的入口類上添加一個@EnableEurekaServer 注解,用于開啟 Eureka 注冊中心服務端

4、在 application.properties 文件中配置 Eureka 服務注冊中心信息:

#內嵌定時tomcat的端口

server.port=8761

#設置該服務注冊中心的hostname

eureka.instance.hostname=localhost

#由于我們目前創建的應用是一個服務注冊中心,而不是普通的應用,默認情況下,這個應用會向注冊中心(也是它自己)注冊它自己,設置為false表示禁止這種自己向自己注冊的默認行為

eureka.client.register-with-eureka=false

#表示不去從服務端檢索其他服務信息,因為自己就是服務端,服務注冊中心本身的職責就是維護服務實例,它不需要去檢索其他服務

eureka.client.fetch-registry=false

#指定服務注冊中心的位置

eureka.client.service-url.defaultZone=http://localhost:8761/eureka

啟動與測試 Eureka 服務注冊中心

1、完成上面的項目搭建后,我們就可以啟動 SpringBoot 程序,main 方法運行;

2、啟動成功之后,通過在瀏覽器地址欄訪問我們的注冊中心;

向 Eureka 服務注冊中心注冊服務

我們前面搭建了服務提供者項目,接下來我們就可以將該服務提供者注冊到

Eureke 注冊中心,步驟如下:

1、在該服務提供者中添加 eureka 的依賴,因為服務提供者向注冊中心注冊服務,需要連接 eureka,所以需要 eureka 客戶端的支持;

  1. <!--spring-cloud-starter-netflix-eureka-client--> 
  2.  
  3. <dependency> 
  4.  
  5. <groupId>org.springframework.cloud</groupId> 
  6.  
  7. <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> 
  8.  
  9. </dependency> 

 2、激活 Eureka 中的 EnableEurekaClient 功能:

在 Spring Boot 的入口函數處,通過添加@EnableEurekaClient 注解來表明自己是一個eureka 客戶端,讓我的服務提供者可以連接 eureka 注冊中心;

3、配置服務名稱和注冊中心地址

#每間隔2s,向服務端發送一次心跳,證明自己依然"存活"

eureka.instance.lease-renewal-interval-in-seconds=2

#告訴服務端,如果我10s之內沒有給你發心跳,就代表我故障了,將我踢出掉

eureka.instance.lease-expiration-duration-in-seconds=10

#告訴服務端,服務實例以IP作為鏈接,而不是取機器名

eureka.instance.prefer-ip-address=true

#告訴服務端,服務實例的名字

eureka.instance.instance-id=34-sprinGCloud-service-goods

#eureka注冊中心的連接地址

eureka.client.service-url.defaultZone=http://localhost:8761/eureka

4、啟動服務提供者 SpringBoot 程序的 main 方法運行;

5、啟動運行之后,通過在瀏覽器地址欄訪問我們之前搭建好的 eureka 注冊中心,就可以看到有一個服務已經注冊成功了;

從 Eureka 服務注冊中心發現與消費服務

我們已經搭建一個服務注冊中心,同時也向這個服務注冊中心注冊了服務,接下來我們就可以發現和消費服務了,這其中服務的發現由 eureka 客戶端實現,而服務的消費由 Ribbon實現,也就是說服務的調用需要 eureka 客戶端和 Ribbon,兩者配合起來才能實現;

Eureka 客戶端是一個 Java 客戶端,用來連接 Eureka 服務端,與服務端進行交互、負載均衡,服務的故障切換等;

Ribbon 是一個基于 HTTP 和 TCP 的客戶端負載均衡器,當使用 Ribbon 對服務進行訪問的時候,它會擴展 Eureka 客戶端的服務發現功能,實現從Eureka注冊中心中獲取服務端列表,并通過 Eureka 客戶端來確定服務端是否己經啟動。

Ribbon 在 Eureka 客戶端服務發現的基礎上,實現了對服務實例的選擇策略,從而實現對服務的負載均衡消費。

接下來我們來讓服務消費者去消費服務:

我們前面搭建了服務消費者項目,接下來我們就可以使用該服務消費者通過注冊中心去調用服務提供者,步驟如下:

1、在該消費者項目中添加 eureka 的依賴,因為服務消費者從注冊中心獲取服務,需要連接 eureka,所以需要 eureka 客戶端的支持;

  1. <!--spring-cloud-starter-netflix-eureka-client--> 
  2.  
  3. <dependency> 
  4.  
  5. <groupId>org.springframework.cloud</groupId> 
  6.  
  7. <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> 
  8.  
  9. </dependency> 

 2、激活 Eureka 中的 EnableEurekaClient 功能:

在 Spring Boot 的入口函數處,通過添加@EnableEurekaClient 注解來表明自己是一個eureka 客戶端,讓我的服務消費者可以使用 eureka 注冊中心;

3、配置服務的名稱和注冊中心的地址:

  1. spring.application.name=34-sprinGCloud-service-portal 
  2.  
  3. eureka.client.service-url.defaultZone=http://localhost:8761/eureka 

 4、前面我介紹了服務的發現由 eureka 客戶端實現,而服務的真正調用由 ribbon實現,所以我們需要在調用服務提供者時使用 ribbon 來調用:

  1. @LoadBalanced//使用Ribbon實現負載均衡的調用 
  2.  
  3. @Bean 
  4.  
  5. public RestTemplate restTemplate() { 
  6.  
  7. return new RestTemplate(); 
  8.  

 加入了 ribbon 的支持,那么在調用時,即可改為使用服務名稱來訪問:

  1. restTemplate.getForEntity("http://34-SPRINGCLOUD-SERVICE-GOODS/service/goods"
  2.  
  3. String.class).getBody(); 

 5、完成上面的步驟后,我們就可以啟動消費者的 SpringBoot 程序,main 方法運行;

6、啟動成功之后,通過在瀏覽器地址欄訪問我們的消費者,看是否可以正常調用遠程服務提供者提供的服務;

Eureka 與 Zookeeper 的比較

著名的 CAP 理論指出,一個分布式系統不可能同時滿足 C(一致性)、A(可用性) 和 P(分區容錯性);

由于分區容錯性在是分布式系統中必須要保證的,因此我們只能在 A 和 C 之間進行權衡,在此 Zookeeper 保證的是 CP, 而 Eureka 則是 AP。

p 全稱:Partition tolerance (分區容忍)

主要是指網絡問題, 比如:A 、B、C 三臺機器之間相互ping不通、網絡不通,這種情況在分布式系統里面是允許的,也是很有可能發生的,我們要容忍這種情況的出現,在這種情況出現的時候,我們 是選擇 “一致性的C” 還是選擇 “可用性的A”,就看應用場景。

Zookeeper 保證 CP

在 ZooKeeper 中,當 master 節點因為網絡故障與其他節點失去聯系時,剩余節點會重新進行 leader 選舉,但是問題在于,選舉 leader 需要一定時間, 且選舉期間整個 ZooKeeper 集群都是不可用的,這就導致在選舉期間注冊服務癱瘓。在云部署的環境下,因網絡問題使得 ZooKeeper 集群失去 master 節點是大概率事件,雖然服務最終能夠恢復,但是在選舉時間內導致服務注冊長期不可用是難以容忍的。

Eureka 保證 AP

Eureka 優先保證可用性,Eureka 各個節點是平等的,某幾個節點掛掉不會影響正常節點的工作,剩余的節點依然可以提供注冊和查詢服務。而 Eureka 的客戶端在向某個 Eureka 注冊或時如果發現連接失敗,則會自動切換至其它節點,只要有一臺 Eureka 還在,就能保證注冊服務可用(保證可用性),只不過查到的信息可能不是最新的(不保證強一致性)。

所以 Eureka 在網絡故障導致部分節點失去聯系的情況下,只要有一個節點可用, 那么注冊和查詢服務就可以正常使用,而不會像 zookeeper 那樣使整個注冊服務癱瘓,Eureka 優先保證了可用性;

Eureka 注冊中心高可用集群

在微服務架構的這種分布式系統中,我們要充分考慮各個微服務組件的高可用性問題,不能有單點故障,由于注冊中心 eureka 本身也是一個服務,如果它只有一個節點,那么它有可能發生故障,這樣我們就不能注冊與查詢服務了,所以我們需要一個高可用的服務注冊中心,這就需要通過注冊中心集群來解決。

eureka 服務注冊中心它本身也是一個服務,它也可以看做是一個提供者,又可以看做是一個消費者,我們之前通過配置:

eureka.client.register-with-eureka=false 讓注冊中心不注冊自己,但是我們可以向其他注冊中心注冊自己;

Eureka Server 的高可用實際上就是將自己作為服務向其他服務注冊中心注冊自己,這樣就會形成一組互相注冊的服務注冊中心,進而實現服務清單的互相同步,往注冊中心 A 上注冊的服務,可以被復制同步到注冊中心 B 上,所以從任何一臺注冊中心上都能查詢到已經注冊的服務,從而達到高可用的效果。

一文帶你掌握SpringCloud高可用服務注冊中心Eureka

Eureka 注冊中心高可用集群搭建

我們知道,Eureka 注冊中心高可用集群就是各個注冊中心相互注冊,所以:

在 8761 的配置文件中,讓它的 service-url 指向 8762和8763,在 8762 的配置文件中讓它的 service-url 指向 8761和8763, 在 8763 的配置文件中讓它的 service-url 指向 8761和8762;

由于兩兩互相指向對方,實際上我們構建了一個三節點的服務注冊中心集群

  1. eureka.client.service-url.defaultZone=http://eureka8762:8762/eureka/,http://eureka8763:8763/eureka/ 
  2.  
  3. eureka.client.service-url.defaultZone=http://eureka8761:8761/eureka/,http://eureka8763:8763/eureka/ 
  4.  
  5. eureka.client.service-url.defaultZone=http://eureka8761:8761/eureka/,http://eureka8762:8762/eureka/ 

 然后在本地 hosts 文件配置:C:\Windows\System32\drivers\etc\hosts

  1. 127.0.0.1 eureka8761 
  2.  
  3. 127.0.0.1 eureka8762 
  4.  
  5. 127.0.0.1 eureka8763 

 運行時,在運行配置項目 Program Arguments 中配置:

  1. --spring.profiles.active=eureka8761 
  2.  
  3. --spring.profiles.active=eureka8762 
  4.  
  5. --spring.profiles.active=eureka8763 

 分別啟動三個注冊中心,訪問三個注冊中心頁面,觀察注冊中心頁面是否正常;

Eureka 注冊中心高可用集群測試

在要進行注冊的服務中配置:

#eureka注冊中心的連接地址

  1. eureka.client.service-url.defaultZone=http://eureka8761:8761/eureka,http://eureka8762:8762/eureka,http://eureka8763:8763/eureka 

啟動服務提供者服務,然后觀察注冊中心頁面,可以看到服務會在三個注冊中心上都注冊成功;

集群的注冊中心打包發布

在真實項目中,需要將Eureka發布到具體服務器上進行執行,打包部署其實和springboot里面的一樣,對于properties文件,不同的環境會有不同的配置文件;

運行:

  1. java -jar sprinGCloud-eureka-server.jar --spring.profiles.active=eureka8762; 
  2.  
  3. java -jar sprinGCloud-eureka-server.jar --spring.profiles.active=eureka8762; 
  4.  
  5. java -jar sprinGCloud-eureka-server.jar --spring.profiles.active=eureka8763 

 可以寫個shell腳本實現三個注冊中心的啟動:

  1. #!/bin/sh 
  2.  
  3. nohup java -jar 34-sprinGCloud-service-eureka-1.0.0.jar --spring.profiles.active=eureka8761 > ./logs/eureka8761.log & 
  4.  
  5. nohup java -jar 34-sprinGCloud-service-eureka-1.0.0.jar --spring.profiles.active=eureka8762 > ./logs/eureka8762.log & 
  6.  
  7. nohup java -jar 34-sprinGCloud-service-eureka-1.0.0.jar --spring.profiles.active=eureka8763 > ./logs/eureka8763.log & 

 修改linux的hosts文件:

  1. vim /etc/hosts 
  2.  
  3. 192.168.10.128 eureka8761 
  4.  
  5. 192.168.10.128 eureka8762 
  6.  
  7. 192.168.10.128 eureka8763 

 Eureka服務注冊中心自我保護機制

自我保護機制是 Eureka 注冊中心的重要特性,當 Eureka 注冊中心進入自我保護模式時,在 Eureka Server 首頁會輸出如下警告信息:

EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT.

RENEWALS ARE LESSER THAN THRESHOLD AND HENCE THE INSTANCES ARE NOT BEING EXPIRED

JUST TO BE SAFE.

小寫是:

emergency! eureka may be incorrectly claiming instances are up when they're not. renewals are

lesser than threshold and hence the instances are not being expired just to be safe.

在沒有 Eureka 自我保護的情況下,如果 Eureka Server 在一定時間內沒有接收到某個微服務實例的心跳,Eureka Server 將會注銷該實例,但是當發生網絡分區故障時,那么微服務與 Eureka Server 之間將無法正常通信,以上行為可能變得非常危險了,因為微服務本身其實是正常的,此時不應該注銷這個微服務,如果沒有自我保護機制,那么 Eureka Server 就會將此服務注銷掉。

Eureka 通過“自我保護模式”來解決這個問題——當 Eureka Server 節點在短時間內丟失過多客戶端時(可能發生了網絡分區故障),那么就會把這個微服務節點進行保護。一旦進入自我保護模式,Eureka Server 就會保護服務注冊表中的信息,不刪除服務注冊表中的數據(也就是不會注銷任何微服務)。當網絡故障恢復后,該 Eureka Server 節點會再自動退出自我保護模式。

所以,自我保護模式是一種應對網絡異常的安全保護措施,它的架構哲學是寧可同時保留所有微服務(健康的微服務和不健康的微服務都會保留),也不盲目注銷任何健康的微服務,使用自我保護模式,可以讓 Eureka 集群更加的健壯、穩定。

當然也可以使用配置項:

eureka.server.enable-self-preservation = false 禁用自我保護模式。

關閉自我保護模式后會出現紅色:

THE SELF PRESERVATION MODE IS TURNED OFF. THIS MAY NOT PROTECT INSTANCE EXPIRY IN CASE OF NETWORK/OTHER PROBLEMS.

但是 Eureka Server 自我保護模式也會給我們帶來一些困擾,如果在保護期內某個服務提供者剛好非正常下線了,此時服務消費者就會拿到一個無效的服務實例,此時會調用失敗,對于這個問題需要服務消費者端具有一些容錯機制,如重試,斷路器等。

Eureka 的自我保護模式是有意義的,該模式被激活后,它不會從注冊列表中剔除因長時間沒收到心跳導致注冊過期的服務,而是等待修復,直到心跳恢復正常之后,它自動退出自我保護模式。這種模式旨在避免因網絡分區故障導致服務不可用的問題。

例如,兩個微服務客戶端實例 A 和 B 之間有調用的關系,A 是消費者,B 是提供者,但是由于網絡故障,B 未能及時向 Eureka 發送心跳續約,這時候 Eureka 不能簡單的將 B 從注冊表中剔除,因為如果剔除了,A 就無法從 Eureka 服務器中獲取 B 注冊的服務,但是這時候 B 服務是可用的;

所以,Eureka 的自我保護模式最好還是開啟它。

關于自我保護常用幾個配置如下:

服務器端配置:

#測試時關閉自我保護機制,保證不可用服務及時踢出

eureka.server.enable-self-preservation=false

客戶配置:

#每間隔 2s,向服務端發送一次心跳,證明自己依然"存活"

eureka.instance.lease-renewal-interval-in-seconds=2

#告訴服務端,如果我 10s 之內沒有給你發心跳,就代表我故障了,將我踢出掉

eureka.instance.lease-expiration-duration-in-seconds=10

 

責任編輯:姜華 來源: 今日頭條
相關推薦

2022-12-20 07:39:46

2023-12-21 17:11:21

Containerd管理工具命令行

2023-12-15 09:45:21

阻塞接口

2021-02-22 09:05:59

Linux字符設備架構

2021-06-04 09:35:05

Linux字符設備架構

2020-12-18 11:54:22

Linux系統架構

2022-08-30 22:12:19

Nacos組件服務注冊

2020-12-21 06:13:52

高可用Nacos服務端

2025-03-31 08:35:00

Eureka微服務架構

2025-01-16 00:20:41

2022-11-09 09:15:31

ProtoBufGo語言

2023-11-20 08:18:49

Netty服務器

2022-10-21 17:24:34

契約測試定位

2023-09-11 06:32:30

VPAHPA容量

2023-07-31 08:18:50

Docker參數容器

2023-11-06 08:16:19

APM系統運維

2021-05-29 10:11:00

Kafa數據業務

2022-11-11 19:09:13

架構

2019-08-23 10:34:05

微服務Eureka架構

2024-10-10 09:12:10

Spring接口初始化
點贊
收藏

51CTO技術棧公眾號

免费看黄裸体一级大秀欧美| 希岛爱理一区二区三区av高清| 久久av中文字幕片| 欧美日韩国产成人| 久久午夜夜伦鲁鲁片| 中文字幕在线视频网站| 国产精品无码永久免费888| 亚洲a区在线视频| 欧美一级视频免费观看| 91综合视频| 亚洲精品电影在线| 免费av不卡在线| 激情aⅴ欧美一区二区欲海潮| 亚洲国产精品ⅴa在线观看| 成人黄色在线免费观看| 久久久久久在线观看| 综合天堂av久久久久久久| 亚洲高清久久网| 制服丝袜综合网| 91豆花视频在线播放| 中文幕一区二区三区久久蜜桃| 成人91免费视频| 中文av免费观看| 在线日韩av| 久久视频精品在线| 少妇无套高潮一二三区| 国产厕拍一区| 欧美一区二区三区四区五区| 92看片淫黄大片一级| 羞羞的视频在线观看| 国产精品网站导航| 欧美日韩在线观看一区二区三区| av男人天堂av| 久久一卡二卡| 精品一区二区中文字幕| 欧美精品一区在线观看| 国产精品一卡| 超碰超碰在线| 精品人妻互换一区二区三区| 日韩欧美亚洲在线| 欧美精品视频www在线观看| 黑人巨大精品欧美一区二区免费| 92看片淫黄大片欧美看国产片| 中文字幕一区在线播放| 影音先锋中文字幕一区| 美女999久久久精品视频| 国产破处视频在线观看| 国产精品亚洲片在线播放| 亚洲精品久久久一区二区三区 | 国产福利不卡| 国产视频一区二区三| 理论电影国产精品| 国产精品旅馆在线| 中文字幕在线观看1| 日韩精品久久久久久| 国产999精品久久久影片官网| 亚洲男人的天堂在线视频| 亚洲大片在线| 97精品视频在线| 国产情侣在线视频| 亚洲精品一级| 欧美综合一区第一页| 黄色一级片免费在线观看| 亚洲一区一卡| 国产精品精品视频| 中文字幕观看视频| 精品一二三四区| 91精品国产综合久久香蕉的用户体验| 伊人精品在线视频| 国产一区二区三区不卡在线观看 | 日韩av影院| 国产视频精品自拍| 毛片网站免费观看| 成人在线亚洲| 久久亚洲综合国产精品99麻豆精品福利| 亚洲天堂网av在线| 伊人久久久大香线蕉综合直播 | 视频在线观看一区二区| 亚洲综合欧美综合| 99久久综合| 欧美黑人巨大精品一区二区| 国产一二三四在线| 久久综合影音| 91亚洲精品久久久| 日韩专区第一页| 国产视频一区在线观看| 国产精品av免费| av在线加勒比| 欧美亚洲日本一区| 日本黄色www| 欧美人体视频| 按摩亚洲人久久| 久草视频精品在线| 视频一区视频二区中文| 91在线精品播放| 天天舔天天干天天操| 国产精品伦理一区二区| av免费看网址| 欧美在线se| 日韩av网站大全| 三级全黄做爰视频| 亚洲制服av| 亚洲一区二区免费| 国产小视频免费在线网址| 亚洲免费高清视频在线| 久久久久久久久久福利| 日韩一区网站| 中文字幕亚洲国产| 日韩黄色一级大片| 国产一区二区三区蝌蚪| 青青草成人网| 密臀av在线播放| 91精品综合久久久久久| 欧美激情aaa| 亚洲国产精品一区制服丝袜| 国产这里只有精品| 久草在线网址| 午夜久久电影网| 美女被艹视频网站| 日韩精品免费一区二区在线观看| 午夜精品久久久久久久99热 | 日韩少妇裸体做爰视频| 激情偷乱视频一区二区三区| 欧美精品国产精品久久久 | 国产99久久精品一区二区 夜夜躁日日躁| 99久久免费国产精精品| 欧美经典一区二区| 日本精品一区二区三区四区| 国产精品15p| 久久成人国产精品| 亚洲永久精品视频| 中文字幕av一区二区三区| 免费无码国产v片在线观看| www.爱久久| 欧美精品videosex性欧美| 亚洲一区二区影视| 国产精品久久久久久久久快鸭| 无码精品国产一区二区三区免费| a看欧美黄色女同性恋| 久久中文字幕在线| 国产又色又爽又黄又免费| 中文在线一区二区| www午夜视频| 日韩精品一区二区久久| 国产精品情侣自拍| 国产三级在线| 欧美三级午夜理伦三级中视频| 精品人伦一区二区三电影| 亚洲欧美高清| 久久久久久99| 欧美日韩123区| 亚洲热线99精品视频| 天天干天天色综合| 中文字幕不卡在线播放| 亚洲人视频在线| 在线成人超碰| 粉嫩av免费一区二区三区| 久草在线资源站资源站| 亚洲成人黄色网| 国产又黄又粗又爽| 久久久久久夜精品精品免费| 四虎永久在线精品无码视频| av一区二区在线播放| 国产免费成人av| 最新国产在线拍揄自揄视频| 精品免费视频.| 伊人久久综合视频| 国产欧美久久久精品影院| 国产视频1区2区3区| 91精品亚洲| 国内视频一区| 日产精品一区| 欧美老妇交乱视频| 五月婷婷免费视频| 欧美午夜在线一二页| www.av免费| 99精品黄色片免费大全| 欧美精品第三页| 永久91嫩草亚洲精品人人| 国产一区高清视频| 成人一级视频| 久色乳综合思思在线视频| 黄色av小说在线观看| 日本道色综合久久| 黄色片在线观看网站| www.欧美色图| 三区视频在线观看| 国产一区二区精品| 亚洲国产精品女人| 欧美电影在线观看免费| 国产欧美精品一区二区三区-老狼| 伊人222成人综合网| 亚洲精品一区二区三区不| 怡春院在线视频| 亚洲午夜免费电影| 天堂在线中文视频| 成人听书哪个软件好| 日本a√在线观看| 极品裸体白嫩激情啪啪国产精品| 丝袜美腿玉足3d专区一区| 一区二区中文字幕在线观看| 国产精品成av人在线视午夜片 | 日本久久亚洲电影| 99福利在线| 国产一区二区日韩精品欧美精品| 亚洲精品福利网站| 欧美日韩国产a| 国产精品男女视频| 亚洲免费av高清| 免费福利视频网站| 9i在线看片成人免费| 亚洲一区二区中文字幕在线观看| 一区二区三区国产在线| 男人的天堂成人| 欧美日韩激情| 久久艳妇乳肉豪妇荡乳av| 亚洲国产精品免费视频| 国产精品一区二区三区久久久| 国产乱码精品一区二三赶尸艳谈| 日韩亚洲综合在线| 国产高清一区在线观看| 日韩成人黄色av| 亚洲精品久久久蜜桃动漫| 欧美日韩亚州综合| 中文字幕xxxx| 色综合天天综合在线视频| 精品无码人妻一区二区三| 亚洲色图都市小说| 成年人视频软件| 国产清纯白嫩初高生在线观看91| 亚洲天堂美女视频| 国产成人精品免费| 亚洲欧美激情一区二区三区| 精品一区免费av| 午夜免费看视频| 日韩国产欧美在线播放| 免费在线观看毛片网站| 久久国产一二区| 日韩中文字幕在线视频观看 | 精品久久久噜噜噜噜久久图片| 亚洲作爱视频| 自拍日韩亚洲一区在线| 在线看片欧美| 国产午夜大地久久| 在线一区视频| 日韩网址在线观看| 欧美中文字幕| 国产精品天天av精麻传媒| 三级影片在线观看欧美日韩一区二区| 免费黄色福利视频| 天堂av在线一区| www.com操| 国内不卡的二区三区中文字幕| 免费黄频在线观看| 国产黄色91视频| 国产精品入口麻豆| 91视频在线看| 国产精品成人一区二区三区电影毛片| 久久婷婷国产综合精品青草| 一级黄色片大全| 亚洲欧洲无码一区二区三区| 日韩va亚洲va欧美va清高| 曰韩精品一区二区| 日韩毛片在线视频| 久久成人精品无人区| 91精品久久久久久久久久| 久久久久久久性潮| 91午夜理伦私人影院| 成人看片黄a免费看视频| 国产伦精品一区二区三区| 亚洲制服一区| 亚洲制服欧美久久| 国语精品一区| 免费黄色特级片| 精品一区二区三区视频在线观看| 2025中文字幕| 国产亚洲短视频| 特一级黄色录像| 五月开心婷婷久久| 成年人晚上看的视频| 91精品国产综合久久精品麻豆| 黄色av一区二区三区| 中文字幕欧美日韩在线| 香蕉成人app免费看片| 日产日韩在线亚洲欧美| 96sao精品免费视频观看| 国产伦精品一区二区三区免| 成人在线免费观看91| av磁力番号网| 丝袜国产日韩另类美女| 欧美熟妇另类久久久久久多毛| 久久噜噜亚洲综合| 欧美成人三级视频| 91激情在线视频| 成人久久久精品国产乱码一区二区| 亚洲欧洲成视频免费观看| 久久99精品久久久久久野外| 91福利视频网| 97久久中文字幕| 欧美亚洲另类久久综合| 自由日本语亚洲人高潮| 亚洲成色www.777999| 成人午夜免费视频| 污污的视频在线免费观看| 一本色道**综合亚洲精品蜜桃冫| 国产黄频在线观看| 色哟哟入口国产精品| 中国色在线日|韩| 99久久精品免费看国产四区| 欧美午夜精品一区二区三区电影| 东北少妇不带套对白| 国内不卡的二区三区中文字幕 | 日韩一区中文字幕| 黄色片免费观看视频| 精品国产一区二区三区久久久蜜月| 超碰免费在线观看| 欧美中在线观看| 伊人www22综合色| 手机成人av在线| 七七婷婷婷婷精品国产| 精品少妇一区二区三区免费观| 一区二区激情视频| 99久久精品国产一区色| 日韩有码在线电影| 国产91亚洲精品久久久| 日本日本精品二区免费| 国产精品综合| 香港三级日本三级| 亚洲成人在线免费| 亚洲国产精品久久久久久6q| 另类天堂视频在线观看| 日日夜夜综合| 成人手机视频在线| 欧美aⅴ一区二区三区视频| 色婷婷av777| 一本久久综合亚洲鲁鲁五月天| 日本黄色不卡视频| 久久久久久97| 久久porn| 日本a视频在线观看| 成人国产精品免费观看动漫| 妺妺窝人体色www在线下载| 日韩一区二区在线观看| 在线你懂的视频| 91九色在线观看| 国模 一区 二区 三区| www.色.com| 夜夜嗨av一区二区三区网页| 亚洲精品久久久久久久久久久久久久 | 日本在线看片免费人成视1000| 国产精品99蜜臀久久不卡二区| 精品国产99| av中文字幕网址| 亚洲欧美日韩国产成人精品影院 | 激情综合色综合久久| 午夜国产小视频| 精品三级在线看| 国产自产自拍视频在线观看| 蜜桃传媒视频第一区入口在线看| 久久久久看片| 最新日韩免费视频| 欧美一区二区三区影视| jizz一区二区三区| 欧美精品欧美精品| 美女视频黄a大片欧美| 看免费黄色录像| 亚洲电影免费观看| 网友自拍亚洲| 老司机午夜网站| 91亚洲国产成人精品一区二区三| youjizz在线视频| 俺去啦;欧美日韩| 国产精品男女| 91激情视频在线| 亚洲桃色在线一区| 日韩一级免费视频| 日韩av不卡在线| 欧美国内亚洲| 国产熟妇搡bbbb搡bbbb| 欧美日韩国产色站一区二区三区| 怡红院av在线| 日韩精品一区二区三区丰满| 国产在线视视频有精品| 国产精品.www| 最新的欧美黄色| 国产精品18hdxxxⅹ在线| 九色91popny| 亚洲一区二区在线免费观看视频| 你懂的在线观看视频网站| 91久久国产婷婷一区二区| 国产欧美短视频| 侵犯稚嫩小箩莉h文系列小说| 亚洲国产又黄又爽女人高潮的| 国产成人免费| 黄色免费观看视频网站| 亚洲欧美日韩在线| 蝌蚪视频在线播放| 懂色中文一区二区三区在线视频| 奇米777欧美一区二区| 日韩女优在线观看|