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

SpringCloud之Netfix微服務(wù)應(yīng)用框架詳解

開發(fā) 架構(gòu)
當(dāng)服務(wù)出現(xiàn)異常情況時,服務(wù)本身可以觸發(fā)熔斷,直接返回統(tǒng)一的錯誤;另外一個是消費方,這種情況下熔斷有了另外一個名詞,也叫降級,一般是服務(wù)方不能正常提供服務(wù),比如訪問超時,或者主動斷開服務(wù)的情況下,消費方做出的反應(yīng),這種壓根就不會向服務(wù)提供方發(fā)起請求。

SpringCloud是目前微服務(wù)轉(zhuǎn)型的首選,主要得益于其活躍的社區(qū)支持度以及全量的配套組件,本章筆者將會把SpringCloud Netfix的幾個核心組件組合起來,和老鐵們一起逐步完成全套的應(yīng)用框架搭建,這樣有需要的老鐵們在項目中就可以直接使用啦。

在SpringCloud Netfix中,核心的組件包括:注冊中心(Eureka)、負(fù)載均衡(Ribbon)、服務(wù)調(diào)用(Feign)、熔斷及降級(Hystrix)、網(wǎng)關(guān)(Gateway)、配置中心(Config)、鏈路追蹤(Sleuth)等幾大組件。我們都知道SpringCloud是基于SpringBoot整出來的微服務(wù)框架,換言之在開發(fā)SpringCloud微服務(wù)的時候,咱就少不了要使用SpringBoot,所以這里的整合SpringCloud也就遵循了SpringBoot的某種整合的規(guī)范,比如對于依賴的引用就遵守:spring-cloud-starter-xxx這種規(guī)范,這里的xxx值得就是咱們使用的組件,比如如果咱們需要整合Ribbon,那它的依賴名稱就是spring-cloud-starter-netflix-ribbon。

首先筆者將應(yīng)用的整體情況做如下介紹:

1.應(yīng)用的整體架構(gòu)圖:

2.使用的SpringCloud的版本是Hoxton.SR9,老鐵們可以根據(jù)自己需要選擇版本。

3.微服務(wù)的代碼層級關(guān)系

其中parent為所有模塊的父依賴,主要管理公共依賴;common是各個模塊都需要用到的一些通用類;springcloud-demo-eureka-service則是eureka注冊中心以及配置中心;global-gateway是網(wǎng)關(guān);order-demo和product-demo是具體的服務(wù)。

4.JDK版本筆者用的是JDK1.8。

5.需要提前下載zipkin服務(wù),下載地址大家到網(wǎng)上搜,下載后執(zhí)行:java -jar zipkin.jar啟動即可,然后訪問:http://localhost:9411/zipkin/看看能否正常訪問,正常情況下訪問顯示如下:

6.登錄到github上,創(chuàng)建一個服務(wù),比如筆者這里創(chuàng)建了springcloud-demo-config的服務(wù),用于存放配置文件。

7.啟動順序:注冊中心和配置中心->服務(wù)提供者->消費者->網(wǎng)關(guān)。

接下來就看每個模塊的代碼了:

1.parent

parent的主要作用是管理公共的依賴,核心就是一個pom.xml文件,需要注意的是,它的parent是spring-boot-starter-parent:

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.6.RELEASE</version>
</parent>
<groupId>my.springcloud.demo</groupId>
<artifactId>parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>

<properties>
<java.version>8</java.version>
<spring-cloud.version>Hoxton.SR9</spring-cloud.version>
</properties>

<modules>
<module>product-demo</module>
<module>springcloud-demo-eureka-service</module>
<module>order-demo</module>
<module>springcloud-demo-eureka-service2</module>
<module>common</module>
<module>global-gateway</module>
</modules>

<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>my.springcloud.demo</groupId>
<artifactId>common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</dependencyManagement>

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>

2.eureka+config

該模塊主要是注冊中心和配置中心。

2.1.依賴

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<!--config server-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>

它主要的兩個依賴是spring-cloud-config-server和spring-cloud-starter-netflix-eureka-server。

2.2.配置文件

它的配置文件application.properties如下:

server.port=8761
spring.application.name=springcloud-demo-eureka-service
#最好取個名字,方便區(qū)分
eureka.instance.instance-id=springclouddemo1.com

#false不注冊自己,當(dāng)然也可以設(shè)置為true,注冊自己
eureka.client.register-with-eureka=false

#config服務(wù)使用git存儲數(shù)據(jù),這里配置git倉庫的地址
spring.cloud.config.server.git.uri=https://github.com/xxxx/springcloud-demo-config.git
spring.cloud.config.server.git.username=xxxxxx@126.com
spring.cloud.config.server.git.password=xxxxxxxx
#指定倉庫分支
spring.cloud.config.server.git.default-label=master

eureka.instance.prefer-ip-address=true

2.3.啟動類注解

在啟動類上增加三個注解:@EnableEurekaServer @SpringBootApplication @EnableConfigServer。

3.gateway

網(wǎng)關(guān)作為作為應(yīng)用的入口,它的主要作用就是請求轉(zhuǎn)發(fā)、統(tǒng)一驗證、路由、限流等,這里我們通過網(wǎng)關(guān)向后臺應(yīng)用轉(zhuǎn)發(fā)。作為訪問的入口,網(wǎng)關(guān)同時也應(yīng)該是調(diào)用鏈路的發(fā)起者。

3.1.依賴

<!--服務(wù)發(fā)現(xiàn)eureka client依賴-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!--網(wǎng)關(guān)依賴-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>
<!--調(diào)用鏈路依賴-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>

<!--config client-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>

3.2.在配置文件bootstrap.yml中指定配置服務(wù)

spring:
application:
name: global-gateway
cloud:
config:
uri: http://localhost:8761
label: master

3.3.遠程倉庫配置文件

這里我們使用的是配置中心的遠程配置,所以在git倉庫的springcloud-demo-config.git應(yīng)用下,添加gateway的配置文件:global-gateway-${active}.properties,指定注冊中心、zipkin的地址,同時配置網(wǎng)關(guān)自動發(fā)現(xiàn),內(nèi)容如下:

spring.application.name=global-gateway
server.port=9006

eureka.client.fetch-registry=true
eureka.client.register-with-eureka=true
eureka.client.service-url.defaultZone=http://localhost:8761/eureka/

#配置網(wǎng)關(guān)自動發(fā)現(xiàn)
spring.cloud.gateway.discovery.locator.enabled=true

spring.zipkin.base-url=http://localhost:9411/
spring.sleuth.sampler.probability=1

3.4.啟動類注解

然后在啟動類上添加如下注解:

@SpringBootApplication
@EnableDiscoveryClient

通過網(wǎng)關(guān)訪問時通過指定服務(wù)名和服務(wù)URL,如:

??http://localhost:9006/ORDER-DEMO/order/getOrder?id=1??

4.商品服務(wù)

作為具體的服務(wù)提供者,它需要往注冊中心注冊服務(wù);

同時需要從配置中心讀取配置文件,也就是作為配置服務(wù)的客戶端;

上報調(diào)用鏈路數(shù)據(jù);

4.1.依賴

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<!--熔斷-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>

<!--調(diào)用鏈路依賴-->
<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>

<!--config client-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>

4.2.在配置文件bootstrap.yml中指定配置服務(wù)

spring:
application:
name: product-demo
cloud:
config:
uri: http://localhost:8761
label: master

4.3.遠程倉庫配置文件

這里我們使用的是配置中心的遠程配置,所以在git倉庫的springcloud-demo-config.git應(yīng)用下,添加商品服務(wù)的配置文件:product-demo-${active}.properties

spring.application.name=product-demo
eureka.instance.instance-id=productdemo
eureka.instance.hostname=localhost
server.port=8080

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

management.endpoint.info.enabled=true

management.endpoints.web.exposure.include=*
management.endpoint.health.enabled=true

management.endpoint.health.show-details=always
management.endpoint.shutdown.enabled = true
info.app.name=productDemo
info.company.name=test
info.test.tt=this is product

spring.zipkin.base-url=http://localhost:9411/

spring.sleuth.sampler.probability=1

4.4.啟動類注解

如果需要開啟熔斷,則需要在啟動類上增加注解:SpringBootApplication和EnableCircuitBreaker

5.訂單服務(wù)

同商品服務(wù)類似,但是它需要消費商品服務(wù),作為服務(wù)的消費者,它需要往注冊中心注冊服務(wù),同時需要從注冊中心同步服務(wù)信息;

同時需要從配置中心讀取配置文件,也就是作為配置服務(wù)的客戶端;

上報調(diào)用鏈路數(shù)據(jù);

5.1.依賴

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

<!--熔斷依賴-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>

<!--調(diào)用鏈路依賴-->
<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>

<!--config client-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>

5.2.在配置文件bootstrap.yml中指定配置服務(wù)

spring:
application:
name: order-demo
cloud:
config:
uri: http://localhost:8761
label: master

5.3.遠程倉庫配置文件

這里我們使用的是配置中心的遠程配置,所以在git倉庫的springcloud-demo-config.git應(yīng)用下,添加商品服務(wù)的配置文件:product-demo-${active}.properties

spring.application.name=order-demo
server.port=8081

eureka.instance.hostname=localhost

eureka.instance.instance-id=orderdemo
management.endpoint.info.enabled=true

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

hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=5000

#zipkin
spring.zipkin.base-url=http://localhost:9411/

spring.sleuth.sampler.probability=1

5.4.啟動類注解

如果需要開啟熔斷,則需要在啟動類上增加注解:

@SpringBootApplication
@EnableHystrix

如果微服務(wù)調(diào)用使用Feign,則還需要增加@EnableFeignClients注解,并且添加接口,同時在接口上添加FeignClient注解,如筆者這里將調(diào)用PRODUCT-DEMO服務(wù):

@FeignClient("PRODUCT-DEMO")
public interface ProductFeignService {
@RequestMapping("/product/getProduct")
public Product getProduct(@RequestParam(value="id") Integer id);
}

當(dāng)然如果是想使用Ribbon調(diào)用,則需要在配置類中增加如下代碼:

@Bean
@LoadBalanced
public RestTemplate createRestTemplate(){
return new RestTemplate();
}

使用時,直接通過如下注解方式直接注入即可使用:

@Autowired
private RestTemplate restTemplate;

然后編寫其他代碼,完成服務(wù)之間的調(diào)用,這里筆者想對熔斷的使用啰嗦兩句,發(fā)送熔斷的地方有兩個地方:一個是服務(wù)提供方,當(dāng)服務(wù)出現(xiàn)異常情況時,服務(wù)本身可以觸發(fā)熔斷,直接返回統(tǒng)一的錯誤;另外一個是消費方,這種情況下熔斷有了另外一個名詞,也叫降級,一般是服務(wù)方不能正常提供服務(wù),比如訪問超時,或者主動斷開服務(wù)的情況下,消費方做出的反應(yīng),這種壓根就不會向服務(wù)提供方發(fā)起請求。

所有代碼完成后,以此啟動,然后通過網(wǎng)關(guān)訪問,然后登錄http://localhost:9411/,可以查看整體的調(diào)用依賴和調(diào)用鏈路信息,至此整體搭建完成。

責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2023-01-12 08:00:00

SpringClou微服務(wù)框架

2021-03-09 09:33:42

網(wǎng)關(guān)授權(quán)微服務(wù)

2021-05-14 09:15:32

SpringCloud微服務(wù)日志

2021-01-28 10:10:51

微服務(wù)后端SpringCloud

2020-06-04 09:24:26

微服務(wù)數(shù)據(jù)框架

2022-10-08 07:31:26

微服務(wù)編排體系

2021-08-02 09:27:02

微服務(wù)接口場景

2024-07-02 10:58:53

2015-01-04 09:30:32

云計算Docker容器技術(shù)

2021-04-22 09:31:58

服務(wù)器微服務(wù)配置

2021-05-31 11:22:24

微服務(wù)開發(fā)框架

2022-04-09 14:45:02

微服務(wù)常見概念Spring

2024-03-18 08:48:52

Spring多端認(rèn)證微服務(wù)

2025-09-08 01:15:00

2023-03-13 08:02:55

斷路器應(yīng)用API

2023-02-17 18:06:33

微服務(wù)架構(gòu)

2021-03-02 16:25:52

微服務(wù)架構(gòu)技術(shù)

2020-11-27 10:50:06

微服務(wù)架構(gòu)框架

2020-08-14 09:27:50

微服務(wù)容器架構(gòu)

2018-08-01 14:20:11

微服務(wù)架構(gòu)人工智能
點贊
收藏

51CTO技術(shù)棧公眾號

久久爱www成人| 国产第一页在线| 欧美日韩在线中文| 欧美视频综合| 久久91精品久久久久久秒播| 国产乱码字幕精品高清av| 日韩欧美有码在线| 亚洲精品欧美精品| 亚洲高清精品视频| 视频一区二区欧美| 久久久久久久久久久成人| 日本一区二区视频在线播放| 99精品国产一区二区三区2021 | 亚洲国产另类久久久精品极度| av在线亚洲天堂| 日日摸夜夜添夜夜添精品视频| 九色精品免费永久在线| 黄色三级生活片| 国产精品欧美大片| 91精品国产色综合久久ai换脸| 男女视频网站在线观看| 日本三级在线播放完整版| av爱爱亚洲一区| 亚洲影视九九影院在线观看| 无码人妻丰满熟妇奶水区码| 狠狠干综合网| 爱福利视频一区| 先锋影音av在线| 亚洲区小说区图片区qvod按摩 | 亚洲三级黄色片| 国产成人精品免费| 91精品综合久久久久久五月天| 久久国产黄色片| 亚洲激情av| 久久av红桃一区二区小说| 色欲狠狠躁天天躁无码中文字幕 | 国产午夜精品一区二区三区| 漂亮人妻被黑人久久精品| 久久伦理中文字幕| 国产永久精品大片wwwapp| 亚洲欧美日韩精品久久久久| 日韩一区二区三区高清| 亚洲色大成网站www| 高清不卡一区二区在线| 91嫩草国产在线观看| 一级特黄aaa| 日本最新不卡在线| 国产精品白丝jk喷水视频一区 | a级片在线观看| 亚洲最大在线| 亚洲男人天堂久| 国精产品一区一区三区免费视频| 台湾色综合娱乐中文网| 日韩黄在线观看| 欧美黑人欧美精品刺激| 欧美人妖在线| 在线成人中文字幕| 影音先锋男人看片资源| 欧美好骚综合网| 日韩亚洲欧美中文高清在线| 午夜黄色福利视频| 亚洲成人精品| 久久久久国产一区二区三区| 国产性一乱一性一伧一色| 亚洲高清成人| 热99久久精品| 一区二区三区免费在线视频| 国模娜娜一区二区三区| 不卡一卡2卡3卡4卡精品在| 亚洲毛片欧洲毛片国产一品色| 成人av网站在线| 蜜桃欧美视频| 日韩大片在线永久免费观看网站| 亚洲图片欧美激情| 99在线观看视频免费| 人成在线免费网站| 色婷婷综合久久久久中文一区二区| 天天碰免费视频| 18禁免费观看网站| 手机福利小视频在线播放| 国产成人av影院| 狠狠色伊人亚洲综合网站色| 国产小视频在线观看| 亚洲欧洲日韩女同| 国产va亚洲va在线va| 亚洲一二三四| 91精品福利在线一区二区三区| 污网站免费观看| 欧美日韩伦理| 欧美大片免费观看| 久久精品久久久久久久| 国产在线精品一区在线观看麻豆| 国产传媒一区| 91社区在线观看| 性感美女久久精品| 老司机久久精品| 国内视频在线精品| 少妇激情综合网| 国产成人在线播放视频| 美女一区二区三区在线观看| 国内成+人亚洲| 午夜激情视频在线| 精品久久久国产精品999| 日本肉体xxxx裸体xxx免费| 97久久综合区小说区图片区 | 久久亚洲AV成人无码国产野外| 久久国产亚洲精品| 91av视频在线| 精品人妻一区二区三区含羞草| 久久久久久久久久电影| 国产1区2区3区中文字幕| 成人精品电影在线| 精品国产第一区二区三区观看体验 | 四虎国产精品免费久久5151| 日韩精品亚洲精品| 欧美成人三级在线观看| 美女一区二区三区在线观看| 精选一区二区三区四区五区| 亚洲一区二区三区欧美| 免费黄色在线视频网站| 亚洲已满18点击进入久久| 邪恶网站在线观看| 精品中文一区| 欧美亚洲国产成人精品| 亚洲卡一卡二卡三| 亚洲免费高清视频在线| 91看片在线免费观看| 亚洲美女久久| 欧美中文字幕视频在线观看| 殴美一级特黄aaaaaa| 亚洲黄色在线视频| 五月天视频在线观看| 国语产色综合| 欧美一区亚洲一区| 亚洲欧美一区二区三| 亚洲成av人片在线观看无码| 九色91porny| 欧美福利电影在线观看| 成人精品aaaa网站| 日本中文字幕在线视频| 欧美日韩精品欧美日韩精品一| av中文字幕免费观看| 久久天堂成人| 日韩国产伦理| 亚洲电影有码| 色yeye香蕉凹凸一区二区av| 最近中文字幕免费观看| 国产精品人成在线观看免费| 亚欧激情乱码久久久久久久久| 欧洲激情综合| 国产欧美精品日韩精品| 免费观看成人高潮| 欧美一级在线观看| 国产一级理论片| 91丨porny丨户外露出| 成熟老妇女视频| 国产精品三级| 国产精品久久久久av| porn亚洲| 日韩一区二区三区视频在线观看| 天天看天天摸天天操| 国产成人精品三级| 国产成人亚洲综合无码| 国产精品欧美大片| 日本一区二区三区四区视频| 成年人视频在线看| 在线综合视频播放| 亚洲av无码一区二区三区在线| 国产精品一区免费在线观看| 日韩免费精品视频| 91精品视频国产| 天天做天天爱天天综合网| 91免费高清视频| 久草在线视频资源| 亚洲免费av片| 亚洲一区二区三区网站| 亚洲欧美经典视频| 亚洲成a人片在线www| 亚洲欧美日韩国产| 一本久久a久久精品vr综合| 视频精品一区二区三区| 欧美亚洲免费电影| 日本中文字幕电影在线免费观看| 日韩一区二区免费电影| 全部毛片永久免费看| 国产精品国产自产拍在线| 国产伦理在线观看| 久久午夜激情| www.欧美黄色| 欧洲grand老妇人| 痴汉一区二区三区| 欧美黄色三级| 久久久久久中文字幕| 超碰免费在线| 亚洲大胆人体视频| 亚洲天堂avav| 色综合天天综合网天天狠天天| 亚洲一二三四五六区| av在线不卡免费看| 日韩视频在线观看一区二区三区| 性欧美xxxx大乳国产app| 9999在线观看| 外国成人在线视频| 99在线视频免费观看| 精品视频在线一区二区在线| 久久久久久九九九| 思思99re6国产在线播放| 亚洲高清在线观看| 99在线精品视频免费观看软件| 欧美性xxxx极品hd欧美风情| 久久久久无码国产精品| 亚洲国产精品av| 精品人妻一区二区三区香蕉| 国产成人自拍网| 爱爱爱爱免费视频| 视频一区二区欧美| 国内外成人激情视频| 韩国精品一区二区三区| 黄色一级片网址| 国产亚洲一区| 成人短视频下载| 蜜臀久久99精品久久久酒店新书 | 一区二区三区午夜| 在线精品视频小说1| 91av在线免费视频| 亚洲国产精品一区二区尤物区| 国精产品一区一区二区三区mba| 国产免费观看久久| 麻豆精品免费视频| 99re亚洲国产精品| 久久久久99人妻一区二区三区| 久久99久国产精品黄毛片色诱| 国产免费人做人爱午夜视频| 一区二区日本视频| 男人插女人视频在线观看| 欧美三级乱码| 美女av免费观看| 国产精品v日韩精品v欧美精品网站| 精品少妇人妻av一区二区| 91影院成人| 亚洲欧洲日夜超级视频| 久久电影院7| 一区二区三区四区免费视频| 欧美oldwomenvideos| 性欧美大战久久久久久久免费观看 | 国产激情在线观看| 综合欧美国产视频二区| 成人av毛片| 色视频www在线播放国产成人| 香蕉视频在线看| 国产亚洲日本欧美韩国| 成人h小游戏| 日韩中文字幕视频在线观看| 麻豆av在线导航| 欧美xxxx18国产| 四季久久免费一区二区三区四区| 欧美精品videosex极品1| heyzo在线播放| 57pao精品| 88xx成人免费观看视频库| 日韩av电影院| 国内精品伊人| 91精品综合久久| 国产精品白浆| 欧美高清性xxxxhd| 精品理论电影在线| 天堂av一区二区| 亚洲电影影音先锋| 日韩免费在线观看av| 日韩午夜在线电影| 久久久亚洲成人| 成人爽a毛片一区二区| 亚洲国产高清自拍| 懂色一区二区三区| 色偷偷9999www| 超碰中文在线| 国产精品精品视频一区二区三区| 亚洲免费看片| 国产精品乱子乱xxxx| 九九亚洲精品| 午夜在线视频免费观看| 一区二区国产在线观看| 免费看污污网站| 国产成人高清视频| 久操视频免费看| 亚洲精品福利视频网站| 丁香六月婷婷综合| 911国产精品| 三级理论午夜在线观看| 日韩中文字幕在线免费观看| 俺来也官网欧美久久精品| 国产精品高精视频免费| 999久久久精品一区二区| 亚洲精品国产一区| 亚洲激情自拍| 欧美大片久久久| 2020国产精品自拍| 国产精品成人免费观看| 色噜噜狠狠一区二区三区果冻| 国产理论视频在线观看| 亚洲欧美日韩一区在线| 18在线观看的| 国产精品爽爽爽| 青青一区二区| 97超碰免费观看| 久久亚洲影院| 白嫩情侣偷拍呻吟刺激| 亚洲欧洲www| 黄色污污网站在线观看| 精品国产乱码久久久久久图片| 91这里只有精品| 国产ts一区二区| 国产精品色在线网站| 干日本少妇视频| 麻豆精品一区二区综合av| 久久成人激情视频| 激情懂色av一区av二区av| www.麻豆av| 欧美xxxx做受欧美| 色哟哟视频在线| 免费成人在线影院| 欧美性xxxx图片| 一区二区三区国产| 中文字字幕在线中文乱码| 亚洲精品小视频在线观看| 国产偷倩在线播放| 99久热re在线精品996热视频| 色爱综合网欧美| 国产视频在线视频| 久久女同互慰一区二区三区| 圆产精品久久久久久久久久久| 欧美精品一区二区久久婷婷| av在线免费网址| 91精品视频专区| 婷婷精品进入| 手机在线视频一区| 亚洲欧美综合网| 一区二区三区午夜| 最近中文字幕2019免费| 一区在线影院| 性欧美精品一区二区三区在线播放 | 欧美国产精品va在线观看| 国产日韩中文在线中文字幕| 在线观看污视频| 成人一区在线看| 国产午夜福利片| 欧美精品一区二区在线播放| 国产啊啊啊视频在线观看| 动漫一区二区在线| 亚洲午夜在线| 插我舔内射18免费视频| 婷婷成人激情在线网| 天堂av电影在线观看| 国产ts一区二区| 日韩欧美三级| 中文字幕乱妇无码av在线| 一区二区成人在线视频| 婷婷综合激情网| 日本在线观看天堂男亚洲 | 狠狠躁夜夜躁人人爽视频| 在线观看欧美成人| 国产麻豆一区二区三区| 美女扒开大腿让男人桶| 久久综合精品国产一区二区三区| 精人妻无码一区二区三区| 色系列之999| 999久久久精品一区二区| 1024精品视频| 国产精品久久精品日日| 亚洲AV无码精品自拍| 91成人精品网站| 日本一二区不卡| 日本wwwwwww| 91久久人澡人人添人人爽欧美| 日本www在线观看| 国产精品美女诱惑| 国产极品人妖在线观看| 亚洲欧美一区二区三区情侣bbw| av一区在线播放| 久久久久久久香蕉| 久久日韩精品一区二区五区| 国产又黄又粗又猛又爽| 91精品国产91| 91综合久久| 成人免费无码大片a毛片| 欧美撒尿777hd撒尿| 污污网站在线观看| 欧美午夜精品理论片a级大开眼界| 寂寞少妇一区二区三区| 可以免费看的av毛片| xxxxx91麻豆| 亚洲小说图片视频| 日韩av影视大全| 在线观看免费成人| 国产精品探花在线| 一区二区免费在线观看| 91免费视频观看| 亚洲av无码一区二区乱子伦 | 国产精品高清一区二区| 国产乱子夫妻xx黑人xyx真爽|