国产无遮挡裸体免费直播视频,久久精品国产蜜臀av,动漫在线视频一区二区,欧亚日韩一区二区三区,久艹在线 免费视频,国产精品美女网站免费,正在播放 97超级视频在线观看,斗破苍穹年番在线观看免费,51最新乱码中文字幕

詳解Spring Cloud Zuul重試機(jī)制探秘

 更新時(shí)間:2017年11月18日 11:02:00   作者:翟永超  
本篇文章主要介紹了詳解Spring Cloud Zuul重試機(jī)制探秘,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

簡(jiǎn)介

本文章對(duì)應(yīng)spring cloud的版本為(Dalston.SR4),具體內(nèi)容如下:

  1. 開(kāi)啟Zuul功能
  2. 通過(guò)源碼了解Zuul的一次轉(zhuǎn)發(fā)
  3. 怎么開(kāi)啟zuul的重試機(jī)制
  4. Edgware.RC1版本的優(yōu)化

開(kāi)啟Zuul的功能

首先如何使用spring cloud zuul完成路由轉(zhuǎn)發(fā)的功能,這個(gè)問(wèn)題很簡(jiǎn)單,只需要進(jìn)行如下準(zhǔn)備工作即可:

  1. 注冊(cè)中心(Eureka Server)
  2. zuul(同時(shí)也是Eureka Client)
  3. 應(yīng)用服務(wù)(同時(shí)也是Eureka Client)

我們希望zuul和后端的應(yīng)用服務(wù)同時(shí)都注冊(cè)到Eureka Server上,當(dāng)我們?cè)L問(wèn)Zuul的某一個(gè)地址時(shí),對(duì)應(yīng)其實(shí)訪問(wèn)的是后端應(yīng)用的某個(gè)地址,從而從這個(gè)地址返回一段內(nèi)容,并展現(xiàn)到瀏覽器上。

注冊(cè)中心(Eureka Server)

創(chuàng)建一個(gè)Eureka Server只需要在主函數(shù)上添加@EnableEurekaServer,并在properties文件進(jìn)行簡(jiǎn)單配置即可,具體內(nèi)容如下:

@EnableEurekaServer
@RestController
@SpringBootApplication
public class EurekaServerApplication {
  public static void main(String[] args) {
   SpringApplication.run(EurekaServerApplication.class, args);
  }
}
server.port=8761
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false

Zuul

主函數(shù)添加@EnableZuulProxy注解(因?yàn)榧蒃ureka,需要另外添加@EnableDiscoveryClient注解)。并配置properties文件,具體內(nèi)容如下所示:

@EnableZuulProxy
@EnableDiscoveryClient
@SpringBootApplication
public class ZuulDemoApplication {
  /**
  * 省略代碼...
  */
}
server.port=8081
spring.application.name=ZUUL-CLIENT
zuul.routes.api-a.serviceId=EUREKA-CLIENT
zuul.routes.api-a.path=/api-a/**
eureka.client.service-url.defaultZone=http://localhost:8761/eureka

應(yīng)用服務(wù)

@RestController
@EnableEurekaClient
@SpringBootApplication
public class EurekaClientApplication {
  public static void main(String[] args) {
   SpringApplication.run(EurekaClientApplication.class, args);
  }
  @RequestMapping(value = "/hello")
  public String index() {
   return "hello spring...";
  }
}
 
spring.application.name=EUREKA-CLIENT
eureka.client.service-url.defaultZone=http://localhost:8761/eureka

三個(gè)工程全部啟動(dòng),這時(shí)當(dāng)我們?cè)L問(wèn)localhost:8081/api-a/hello時(shí),你會(huì)看到瀏覽器輸出的內(nèi)容是hello spring...

通過(guò)源碼了解Zuul的一次轉(zhuǎn)發(fā)

接下來(lái)我們通過(guò)源碼層面來(lái)了解下,一次轉(zhuǎn)發(fā)內(nèi)部都做了哪些事情。

首先我們查看Zuul的配置類(lèi)ZuulProxyAutoConfiguration在這個(gè)類(lèi)中有一項(xiàng)工作是初始化Zuul默認(rèn)自帶的Filter,其中有一個(gè)Filter很重要,它就是RibbonRoutingFilter。它主要是完成請(qǐng)求的路由轉(zhuǎn)發(fā)。接下來(lái)我們看下他的run方法

@Override
public Object run() {
  RequestContext context = RequestContext.getCurrentContext();
  try {
   RibbonCommandContext commandContext = buildCommandContext(context);
   ClientHttpResponse response = forward(commandContext);
   setResponse(response);
   return response;
  }
  catch (ZuulException ex) {
   throw new ZuulRuntimeException(ex);
  }
  catch (Exception ex) {
   throw new ZuulRuntimeException(ex);
  }
}

可以看到進(jìn)行轉(zhuǎn)發(fā)的方法是forward,我們進(jìn)一步查看這個(gè)方法,具體內(nèi)容如下:

省略部分代碼

protected ClientHttpResponse forward(RibbonCommandContext context) throws Exception {
  RibbonCommand command = this.ribbonCommandFactory.create(context);
  try {
   ClientHttpResponse response = command.execute();
   return response;
  }
  catch (HystrixRuntimeException ex) {
   return handleException(info, ex);
  }
}

ribbonCommandFactory指的是HttpClientRibbonCommandFactory這個(gè)類(lèi)是在RibbonCommandFactoryConfiguration完成初始化的(觸發(fā)RibbonCommandFactoryConfiguration的加載動(dòng)作是利用ZuulProxyAutoConfiguration類(lèi)上面的@Import標(biāo)簽),具體代碼如下:

@Configuration
@ConditionalOnRibbonHttpClient
protected static class HttpClientRibbonConfiguration {
  @Autowired(required = false)
  private Set<ZuulFallbackProvider> zuulFallbackProviders = Collections.emptySet();
  @Bean
  @ConditionalOnMissingBean
  public RibbonCommandFactory<?> ribbonCommandFactory(
     SpringClientFactory clientFactory, ZuulProperties zuulProperties) {
   return new HttpClientRibbonCommandFactory(clientFactory, zuulProperties, zuulFallbackProviders);
  }
}

知道了這個(gè)ribbonCommandFactory具體的實(shí)現(xiàn)類(lèi)(HttpClientRibbonCommandFactory),接下來(lái)我們看看它的create方法具體做了那些事情

@Override
public HttpClientRibbonCommand create(final RibbonCommandContext context) {
  ZuulFallbackProvider zuulFallbackProvider = getFallbackProvider(context.getServiceId());
  final String serviceId = context.getServiceId();
  final RibbonLoadBalancingHttpClient client = this.clientFactory.getClient(
     serviceId, RibbonLoadBalancingHttpClient.class);
  client.setLoadBalancer(this.clientFactory.getLoadBalancer(serviceId));
  return new HttpClientRibbonCommand(serviceId, client, context, zuulProperties, zuulFallbackProvider,
     clientFactory.getClientConfig(serviceId));
}

這個(gè)方法按照我的理解主要做了以下幾件事情:

@Override
public HttpClientRibbonCommand create(final RibbonCommandContext context) {
  /**
  *獲取所有ZuulFallbackProvider,即當(dāng)Zuul
  *調(diào)用失敗后的降級(jí)方法
  */
  ZuulFallbackProvider = xxxxx
  /**
  *創(chuàng)建處理請(qǐng)求轉(zhuǎn)發(fā)類(lèi),該類(lèi)會(huì)利用
  *Apache的Http client進(jìn)行請(qǐng)求的轉(zhuǎn)發(fā)
  */
  RibbonLoadBalancingHttpClient = xxxxx
  
  /**
  *將降級(jí)方法、處理請(qǐng)求轉(zhuǎn)發(fā)類(lèi)、以及其他一些內(nèi)容
  *包裝成HttpClientRibbonCommand(這個(gè)類(lèi)繼承了HystrixCommand)
  */
  return new HttpClientRibbonCommand(xxxxx);
}

到這里我們很清楚的知道了RibbonRoutingFilter類(lèi)的forward方法中RibbonCommand command = this.ribbonCommandFactory.create(context);這一行代碼都做了哪些內(nèi)容.

接下來(lái)調(diào)用的是command.execute();方法,通過(guò)剛剛的分析我們知道了command其實(shí)指的是HttpClientRibbonCommand,同時(shí)我們也知道HttpClientRibbonCommand繼承了HystrixCommand所以當(dāng)執(zhí)行command.execute();時(shí)其實(shí)執(zhí)行的是HttpClientRibbonCommand的run方法。查看源碼我們并沒(méi)有發(fā)現(xiàn)run方法,但是我們發(fā)現(xiàn)HttpClientRibbonCommand直接繼承了AbstractRibbonCommand。所以其實(shí)執(zhí)行的是AbstractRibbonCommand的run方法,接下來(lái)我們看看run方法里面都做了哪些事情:

@Override
protected ClientHttpResponse run() throws Exception {
  final RequestContext context = RequestContext.getCurrentContext();
  RQ request = createRequest();
  RS response = this.client.executeWithLoadBalancer(request, config);
  context.set("ribbonResponse", response);
  if (this.isResponseTimedOut()) {
   if (response != null) {
     response.close();
   }
  }
  return new RibbonHttpResponse(response);
}

可以看到在run方法中會(huì)調(diào)用client的executeWithLoadBalancer方法,通過(guò)上面介紹我們知道client指的是RibbonLoadBalancingHttpClient,而RibbonLoadBalancingHttpClient里面并沒(méi)有executeWithLoadBalancer方法。(這里面會(huì)最終調(diào)用它的父類(lèi)AbstractLoadBalancerAwareClient的executeWithLoadBalancer方法。)

具體代碼如下:

public T executeWithLoadBalancer(final S request, final IClientConfig requestConfig) throws ClientException {
 /**
 * 創(chuàng)建一個(gè)RetryHandler,這個(gè)很重要它是用來(lái)
 * 決定利用RxJava的Observable是否進(jìn)行重試的標(biāo)準(zhǔn)。
 */
  RequestSpecificRetryHandler handler = getRequestSpecificRetryHandler(request, requestConfig);
  /**
   * 創(chuàng)建一個(gè)LoadBalancerCommand,這個(gè)類(lèi)用來(lái)創(chuàng)建Observable
   * 以及根據(jù)RetryHandler來(lái)判斷是否進(jìn)行重試操作。
   */
  LoadBalancerCommand<T> command = LoadBalancerCommand.<T>builder()
      .withLoadBalancerContext(this)
      .withRetryHandler(handler)
      .withLoadBalancerURI(request.getUri())
      .build();
  try {
   /**
   *command.submit()方法主要是創(chuàng)建了一個(gè)Observable(RxJava)
   *并且為這個(gè)Observable設(shè)置了重試次數(shù),這個(gè)Observable最終
   *會(huì)回調(diào)AbstractLoadBalancerAwareClient.this.execute()
   *方法。
   */
    return command.submit(
      new ServerOperation<T>() {
        @Override
        public Observable<T> call(Server server) {
          URI finalUri = reconstructURIWithServer(server, request.getUri());
          S requestForServer = (S) request.replaceUri(finalUri);
          try {
            return Observable.just(AbstractLoadBalancerAwareClient.this.execute(requestForServer, requestConfig));
          } 
          catch (Exception e) {
            return Observable.error(e);
          }
        }
      })
      .toBlocking()
      .single();
  } catch (Exception e) {
    Throwable t = e.getCause();
    if (t instanceof ClientException) {
      throw (ClientException) t;
    } else {
      throw new ClientException(e);
    }
  }
  
}

下面針對(duì)于每一塊內(nèi)容做詳細(xì)說(shuō)明:

首先getRequestSpecificRetryHandler(request, requestConfig);這個(gè)方法其實(shí)調(diào)用的是RibbonLoadBalancingHttpClient的getRequestSpecificRetryHandler方法,這個(gè)方法主要是返回一個(gè)RequestSpecificRetryHandler

@Override
public RequestSpecificRetryHandler getRequestSpecificRetryHandler(RibbonApacheHttpRequest request, IClientConfig requestConfig) {
 /**
 *這個(gè)很關(guān)鍵,請(qǐng)注意該類(lèi)構(gòu)造器中的前兩個(gè)參數(shù)的值
 *正因?yàn)橐婚_(kāi)始我也忽略了這兩個(gè)值,所以后續(xù)給我造
 *成一定的干擾。
 */
  return new RequestSpecificRetryHandler(false, false,
     RetryHandler.DEFAULT, requestConfig);
}

接下來(lái)創(chuàng)建LoadBalancerCommand并將上一步獲得的RequestSpecificRetryHandler作為參數(shù)內(nèi)容。

最后調(diào)用LoadBalancerCommand的submit方法。該方法內(nèi)容太長(zhǎng)具體代碼細(xì)節(jié)就不在這里貼出了,按照我個(gè)人的理解,只貼出相應(yīng)的偽代碼:

public Observable<T> submit(final ServerOperation<T> operation) {
 //相同server的重試次數(shù)(去除首次請(qǐng)求)
  final int maxRetrysSame = retryHandler.getMaxRetriesOnSameServer();
  //集群內(nèi)其他Server的重試個(gè)數(shù)
  final int maxRetrysNext = retryHandler.getMaxRetriesOnNextServer();
  /**
   *創(chuàng)建一個(gè)Observable(RxJava),selectServer()方法是
   *利用Ribbon選擇一個(gè)Server,并將其包裝成Observable
   */
  Observable<T> o = selectServer().concatMap(new Func1<Server, Observable<T>>() { 
    @Override
    public Observable<T> call(final Server server) {
     /**
     *這里會(huì)回調(diào)submit方法入?yún)erverOperation類(lèi)的call方法,
     */
   return operation.call(server).doOnEach(new Observer<T>() {}
 }
  }
  if (maxRetrysSame > 0) 
   o = o.retry(retryPolicy(maxRetrysSame, true));
    
  if (maxRetrysNext > 0 && server == null) 
    o = o.retry(retryPolicy(maxRetrysNext, false));
  
  return o.onErrorResumeNext(new Func1<Throwable, Observable<T>>() {
    @Override
    public Observable<T> call(Throwable e) {
    /**
    *轉(zhuǎn)發(fā)請(qǐng)求失敗時(shí),會(huì)進(jìn)入此方法。通過(guò)此方法進(jìn)行判斷
    *是否超過(guò)重試次數(shù)maxRetrysSame、maxRetrysNext。
    */
   }
  });
}

operation.call()方法最終會(huì)調(diào)用RibbonLoadBalancingHttpClient的execute方法,該方法內(nèi)容如下:

@Override
public RibbonApacheHttpResponse execute(RibbonApacheHttpRequest request,
   final IClientConfig configOverride) throws Exception {
  /**
  * 組裝參數(shù)(RequestConfig)
  */
  final RequestConfig.Builder builder = RequestConfig.custom();
  IClientConfig config = configOverride != null ? configOverride : this.config;
  builder.setConnectTimeout(config.get(
     CommonClientConfigKey.ConnectTimeout, this.connectTimeout));
  builder.setSocketTimeout(config.get(
     CommonClientConfigKey.ReadTimeout, this.readTimeout));
  builder.setRedirectsEnabled(config.get(
     CommonClientConfigKey.FollowRedirects, this.followRedirects));
  final RequestConfig requestConfig = builder.build();
  if (isSecure(configOverride)) {
   final URI secureUri = UriComponentsBuilder.fromUri(request.getUri())
      .scheme("https").build().toUri();
   request = request.withNewUri(secureUri);
  }
  final HttpUriRequest httpUriRequest = request.toRequest(requestConfig);
  /**
  * 發(fā)送轉(zhuǎn)發(fā)請(qǐng)求
  */
  final HttpResponse httpResponse = this.delegate.execute(httpUriRequest);
  /**
  * 返回結(jié)果
  */
  return new RibbonApacheHttpResponse(httpResponse, httpUriRequest.getURI());
}

可以看到上面方法主要做的就是組裝請(qǐng)求參數(shù)(包括各種超時(shí)時(shí)間),然后發(fā)起轉(zhuǎn)發(fā)請(qǐng)求,最終獲取相應(yīng)結(jié)果。

說(shuō)到這里,zuul轉(zhuǎn)發(fā)一次請(qǐng)求的基本原理就說(shuō)完了。讓我們?cè)倩仡櫹抡麄€(gè)流程。

  1. zuul的轉(zhuǎn)發(fā)是通過(guò)RibbonRoutingFilter這個(gè)Filter進(jìn)行操作的。
  2. 在轉(zhuǎn)發(fā)之前,zuul利用Hystrix將此次轉(zhuǎn)發(fā)請(qǐng)求包裝成一個(gè)HystrixCommand,正應(yīng)為這樣才使得zuul具有了降級(jí)(Fallback)的功能,同時(shí)HystrixCommand是具備超時(shí)時(shí)間的(默認(rèn)是1s)。而且Zuul默認(rèn)采用的隔離級(jí)別是信號(hào)量模式。
  3. 在HystrixCommand內(nèi)部zuul再次將請(qǐng)求包裝成一個(gè)Observable,(有關(guān)RxJava的知識(shí)請(qǐng)參照其官方文檔)。并且為Observable設(shè)置了重試次數(shù)。

事實(shí)真的是這樣嗎?當(dāng)我看到源碼中為Observable設(shè)置重試次數(shù)的時(shí)候,我以為這就是zuul的重試邏輯。遺憾的是我的想法是錯(cuò)誤的。還記得上面我說(shuō)的getRequestSpecificRetryHandler(request, requestConfig);這個(gè)方法嗎?(不記得的同學(xué)可以回過(guò)頭來(lái)再看下),這個(gè)方法返回的是RequestSpecificRetryHandler這個(gè)類(lèi),而且在創(chuàng)建該類(lèi)時(shí),構(gòu)造器的前兩個(gè)參數(shù)都為false。(這一點(diǎn)非常重要)。這兩個(gè)參數(shù)分別是okToRetryOnConnectErrors和okToRetryOnAllErrors。

我原本的想法是這個(gè)請(qǐng)求被包裝成Observable,如果這次請(qǐng)求因?yàn)槌瑫r(shí)出現(xiàn)異常或者其他異常,這樣就會(huì)觸發(fā)Observable的重試機(jī)制(RxJava),但是事實(shí)并非如此,為什么呢?原因就是上面的那兩個(gè)參數(shù),當(dāng)出現(xiàn)了超時(shí)異常的時(shí)候,在觸發(fā)重試機(jī)制之前會(huì)調(diào)用RequestSpecificRetryHandler的isRetriableException()方法,該方法的作用是用來(lái)判斷是否執(zhí)行重試動(dòng)作,具體代碼如下:

@Override
public boolean isRetriableException(Throwable e, boolean sameServer) {
  //此時(shí)該值為false
  if (okToRetryOnAllErrors) {
    return true;
  } 
  else if (e instanceof ClientException) {
    ClientException ce = (ClientException) e;
    if (ce.getErrorType() == ClientException.ErrorType.SERVER_THROTTLED) {
      return !sameServer;
    } else {
      return false;
    }
  } 
  else {
    //此時(shí)該值為false
    return okToRetryOnConnectErrors && isConnectionException(e);
  }
}

說(shuō)道這里zuul轉(zhuǎn)發(fā)一次請(qǐng)求的基本原理大概了解了,同時(shí)也驗(yàn)證了一個(gè)事實(shí)就是實(shí)現(xiàn)zuul進(jìn)行重試的邏輯并不是Observable的重試機(jī)制。那么問(wèn)題來(lái)了?是什么使zuul具有重試功能的呢?

怎么開(kāi)啟zuul的重試機(jī)制

開(kāi)啟Zuul重試的功能在原有的配置基礎(chǔ)上需要額外進(jìn)行以下設(shè)置:

  1. 在pom中添加spring-retry的依賴(maven工程)
  2. 設(shè)置zuul.retryable=true(該參數(shù)默認(rèn)為false)

具體properties文件內(nèi)容如下:

server.port=8081
spring.application.name=ZUUL-CLIENT
#路由信息
zuul.routes.api-a.serviceId=EUREKA-CLIENT
zuul.routes.api-a.path=/api-a/**
#是否開(kāi)啟重試功能
zuul.retryable=true
#同一個(gè)Server重試的次數(shù)(除去首次)
ribbon.MaxAutoRetries=3
#切換相同Server的次數(shù)
ribbon.MaxAutoRetriesNextServer=0
eureka.client.service-url.defaultZone=http://localhost:8761/eureka

為了模擬出Zuul重試的功能,需要對(duì)后端應(yīng)用服務(wù)進(jìn)行改造,改造后的內(nèi)容如下:

@RequestMapping(value = "/hello")
public String index() {
  System.out.println("request is coming...");
  try {
   Thread.sleep(100000);
  } catch (InterruptedException e) {
   System.out.println("線程被打斷... " + e.getMessage());
  }
  return "hello spring ...";
}

通過(guò)使用Thread.sleep(100000)達(dá)到Zuul轉(zhuǎn)發(fā)超時(shí)情況(Zuul默認(rèn)連接超時(shí)未2s、read超時(shí)時(shí)間為5s),從而觸發(fā)Zuul的重試功能。這時(shí)候在此訪問(wèn)localhost:8081/api-a/hello時(shí),查看應(yīng)用服務(wù)后臺(tái),會(huì)發(fā)現(xiàn)最終打印三次"request is coming..."

通過(guò)現(xiàn)象看本質(zhì),接下來(lái)簡(jiǎn)單介紹下Zuul重試的原理。首先如果你工程classpath中存在spring-retry,那么zuul在初始化的時(shí)候就不會(huì)創(chuàng)建RibbonLoadBalancingHttpClient而是創(chuàng)建RetryableRibbonLoadBalancingHttpClient具體源代碼如下:

@ConditionalOnClass(name = "org.apache.http.client.HttpClient")
@ConditionalOnProperty(name = "ribbon.httpclient.enabled", matchIfMissing = true)
public class HttpClientRibbonConfiguration {
  @Value("${ribbon.client.name}")
  private String name = "client";
  @Bean
  @ConditionalOnMissingBean(AbstractLoadBalancerAwareClient.class)
  @ConditionalOnMissingClass(value = "org.springframework.retry.support.RetryTemplate")
  public RibbonLoadBalancingHttpClient ribbonLoadBalancingHttpClient(
     IClientConfig config, ServerIntrospector serverIntrospector,
     ILoadBalancer loadBalancer, RetryHandler retryHandler) {
   RibbonLoadBalancingHttpClient client = new RibbonLoadBalancingHttpClient(
      config, serverIntrospector);
   client.setLoadBalancer(loadBalancer);
   client.setRetryHandler(retryHandler);
   Monitors.registerObject("Client_" + this.name, client);
   return client;
  }
  @Bean
  @ConditionalOnMissingBean(AbstractLoadBalancerAwareClient.class)
  @ConditionalOnClass(name = "org.springframework.retry.support.RetryTemplate")
  public RetryableRibbonLoadBalancingHttpClient retryableRibbonLoadBalancingHttpClient(
     IClientConfig config, ServerIntrospector serverIntrospector,
     ILoadBalancer loadBalancer, RetryHandler retryHandler,
     LoadBalancedRetryPolicyFactory loadBalancedRetryPolicyFactory) {
   RetryableRibbonLoadBalancingHttpClient client = new RetryableRibbonLoadBalancingHttpClient(
      config, serverIntrospector, loadBalancedRetryPolicyFactory);
   client.setLoadBalancer(loadBalancer);
   client.setRetryHandler(retryHandler);
   Monitors.registerObject("Client_" + this.name, client);
   return client;
  }
}

所以請(qǐng)求到來(lái)需要轉(zhuǎn)發(fā)的時(shí)候(AbstractLoadBalancerAwareClient類(lèi)中executeWithLoadBalancer方法會(huì)調(diào)用AbstractLoadBalancerAwareClient.this.execute())其實(shí)調(diào)用的是RetryableRibbonLoadBalancingHttpClient的execute方法(而不是沒(méi)有重試時(shí)候RibbonLoadBalancingHttpClient的execute方法),源碼內(nèi)容如下:

@Override
public RibbonApacheHttpResponse execute(final RibbonApacheHttpRequest request, final IClientConfig configOverride) throws Exception {
  final RequestConfig.Builder builder = RequestConfig.custom();
  IClientConfig config = configOverride != null ? configOverride : this.config;
  builder.setConnectTimeout(config.get(
     CommonClientConfigKey.ConnectTimeout, this.connectTimeout));
  builder.setSocketTimeout(config.get(
     CommonClientConfigKey.ReadTimeout, this.readTimeout));
  builder.setRedirectsEnabled(config.get(
     CommonClientConfigKey.FollowRedirects, this.followRedirects));
  final RequestConfig requestConfig = builder.build();
  final LoadBalancedRetryPolicy retryPolicy = loadBalancedRetryPolicyFactory.create(this.getClientName(), this);
  RetryCallback retryCallback = new RetryCallback() {
   @Override
   public RibbonApacheHttpResponse doWithRetry(RetryContext context) throws Exception {
     //on retries the policy will choose the server and set it in the context
     //extract the server and update the request being made
     RibbonApacheHttpRequest newRequest = request;
     if(context instanceof LoadBalancedRetryContext) {
      ServiceInstance service = ((LoadBalancedRetryContext)context).getServiceInstance();
      if(service != null) {
        //Reconstruct the request URI using the host and port set in the retry context
        newRequest = newRequest.withNewUri(new URI(service.getUri().getScheme(),
           newRequest.getURI().getUserInfo(), service.getHost(), service.getPort(),
           newRequest.getURI().getPath(), newRequest.getURI().getQuery(),
           newRequest.getURI().getFragment()));
      }
     }
     if (isSecure(configOverride)) {
      final URI secureUri = UriComponentsBuilder.fromUri(newRequest.getUri())
         .scheme("https").build().toUri();
      newRequest = newRequest.withNewUri(secureUri);
     }
     HttpUriRequest httpUriRequest = newRequest.toRequest(requestConfig);
     final HttpResponse httpResponse = RetryableRibbonLoadBalancingHttpClient.this.delegate.execute(httpUriRequest);
     if(retryPolicy.retryableStatusCode(httpResponse.getStatusLine().getStatusCode())) {
      if(CloseableHttpResponse.class.isInstance(httpResponse)) {
        ((CloseableHttpResponse)httpResponse).close();
      }
      throw new RetryableStatusCodeException(RetryableRibbonLoadBalancingHttpClient.this.clientName,
         httpResponse.getStatusLine().getStatusCode());
     }
     return new RibbonApacheHttpResponse(httpResponse, httpUriRequest.getURI());
   }
  };
  return this.executeWithRetry(request, retryPolicy, retryCallback);
}

executeWithRetry方法內(nèi)容如下:

private RibbonApacheHttpResponse executeWithRetry(RibbonApacheHttpRequest request, LoadBalancedRetryPolicy retryPolicy, RetryCallback<RibbonApacheHttpResponse, IOException> callback) throws Exception {
  RetryTemplate retryTemplate = new RetryTemplate();
  boolean retryable = request.getContext() == null ? true :
     BooleanUtils.toBooleanDefaultIfNull(request.getContext().getRetryable(), true);
  retryTemplate.setRetryPolicy(retryPolicy == null || !retryable ? new NeverRetryPolicy()
     : new RetryPolicy(request, retryPolicy, this, this.getClientName()));
  return retryTemplate.execute(callback);
}

按照我的理解,主要邏輯如下:

@Override
public RibbonApacheHttpResponse execute(final RibbonApacheHttpRequest request, final IClientConfig configOverride) throws Exception {
  /**
  *創(chuàng)建RequestConfig(請(qǐng)求信息)
  */
  final RequestConfig requestConfig = builder.build();
  final LoadBalancedRetryPolicy retryPolicy =       loadBalancedRetryPolicyFactory.create(this.getClientName(), this);
  /**
  * 創(chuàng)建RetryCallbck的實(shí)現(xiàn)類(lèi),用來(lái)完成重試邏輯
  */
  RetryCallback retryCallback = new RetryCallback() {};
  
  //創(chuàng)建Spring-retry的模板類(lèi),RetryTemplate。
  RetryTemplate retryTemplate = new RetryTemplate();
 /**
 *設(shè)置重試規(guī)則,即在什么情況下進(jìn)行重試
 *什么情況下停止重試。源碼中這部分存在
 *一個(gè)判斷,判斷的根據(jù)就是在zuul工程
 *的propertris中配置的zuul.retryable
 *該參數(shù)內(nèi)容為true才可以具有重試功能。
 */
 retryTemplate.setRetryPolicy(xxx);
 /**
 *發(fā)起請(qǐng)求
 */
 return retryTemplate.execute(callback);
}

到此為止我們不僅知道了zuul路由一次請(qǐng)求的整體過(guò)程,也明確了zuul因后端超時(shí)而觸發(fā)重試的原理??墒撬坪踹€存在著一個(gè)問(wèn)題,就是超時(shí)問(wèn)題。前面說(shuō)過(guò)zuul把路由請(qǐng)求這個(gè)過(guò)程包裝成一個(gè)HystrixCommnd,而在我的propertries文件中并沒(méi)有設(shè)置Hystrix的超時(shí)時(shí)間(默認(rèn)時(shí)間為1s),而read的超時(shí)時(shí)間是5s(前面源碼部分介紹過(guò))。這里就會(huì)有人問(wèn),因?yàn)樽钔鈱邮遣捎肏ystrix,而Hystrix此時(shí)已經(jīng)超時(shí)了,為什么還允許它內(nèi)部繼續(xù)使用spring-retry進(jìn)行重試呢?帶著這個(gè)問(wèn)題我查看了官方GitHub上的issues,發(fā)現(xiàn)有人對(duì)此問(wèn)題提出過(guò)疑問(wèn)。作者給出的回復(fù)是Hystrix超時(shí)的時(shí)候并不會(huì)打斷內(nèi)部重試的操作。

其實(shí)說(shuō)實(shí)話這塊內(nèi)容我并不是很理解(可能是因?yàn)镠ystrix源碼了解較少),帶著這個(gè)問(wèn)題我給作者發(fā)了一封郵件,郵件對(duì)話內(nèi)容如下:

我的(英語(yǔ)水平不好,大家見(jiàn)諒):

I want to confirm two issues with you, First of all zuul retry only spring-retry exists and zuul.retry this parameter is true to take effect? The second problem is that if my classpath spring-retry at the same time I let zuul.retry this parameter is true, which means that at this time zuul have a retry mechanism, then why when Hystrix time-out can not interrupt the spring- retry it. thank you very much

作者的回復(fù)(重點(diǎn)):

Zuul will retry failed requests IF Spring Retry is on the classpath and the property zuul.retryable is set to true. The retry is happening within the hystrix command, so if hystrix times out than a response is returned. Right now there is no mechanism to stop further retries from happening if hystrix times out before all the retries are exhauted.
On Thu, Nov 16, 2017 at 8:40 AM 李剛 spring_holy@163.com wrote:

雖然得到了作者的確認(rèn),但是這部分內(nèi)容始終還是沒(méi)有完全理解,后續(xù)還要看看Hystrix的源碼。

Edgware.RC1版本的優(yōu)化

在Edgware.RC1版本中,作者修改了代碼并不使用Ribbon的默認(rèn)值而是將ConnectTimeout以及ReadTimeout都賦值為1S),,同時(shí)調(diào)整Hystrix的超時(shí)時(shí)間,時(shí)間為(2S).具體信息內(nèi)容如下:
https://github.com/spring-cloud/spring-cloud-netflix/pull/2261

同時(shí)作者也闡明了利用Hystrix包裝使用Ribbon時(shí)關(guān)于超時(shí)時(shí)間的設(shè)置規(guī)則(以下內(nèi)容來(lái)自GitHub):

When using Hystrix commands that wrap Ribbon clients you want to make sure your Hystrix timeout is configured to be longer than the configured Ribbon timeout, including any potential
retries that might be made. For example, if your Ribbon connection timeout is one second and
the Ribbon client might retry the request three times, than your Hystrix timeout should
be slightly more than three seconds.

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家

相關(guān)文章

  • Java創(chuàng)建和啟動(dòng)線程的兩種方式實(shí)例分析

    Java創(chuàng)建和啟動(dòng)線程的兩種方式實(shí)例分析

    這篇文章主要介紹了Java創(chuàng)建和啟動(dòng)線程的兩種方式,結(jié)合實(shí)例形式分析了java多線程創(chuàng)建、使用相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2019-09-09
  • Apache Calcite進(jìn)行SQL解析(java代碼實(shí)例)

    Apache Calcite進(jìn)行SQL解析(java代碼實(shí)例)

    Calcite是一款開(kāi)源SQL解析工具, 可以將各種SQL語(yǔ)句解析成抽象語(yǔ)法樹(shù)AST(Abstract Syntax Tree), 之后通過(guò)操作AST就可以把SQL中所要表達(dá)的算法與關(guān)系體現(xiàn)在具體代碼之中,今天通過(guò)代碼實(shí)例給大家介紹Apache Calcite進(jìn)行SQL解析問(wèn)題,感興趣的朋友一起看看吧
    2022-01-01
  • Java并發(fā)編程之詳解ConcurrentHashMap類(lèi)

    Java并發(fā)編程之詳解ConcurrentHashMap類(lèi)

    在之前的文章中已經(jīng)為大家介紹了java并發(fā)編程的工具:BlockingQueue接口、ArrayBlockingQueue、DelayQueue、LinkedBlockingQueue、PriorityBlockingQueue、SynchronousQueue、BlockingDeque接口,本文為系列文章第八篇.需要的朋友可以參考下
    2021-06-06
  • java 線程方法join簡(jiǎn)單用法實(shí)例總結(jié)

    java 線程方法join簡(jiǎn)單用法實(shí)例總結(jié)

    這篇文章主要介紹了java 線程方法join簡(jiǎn)單用法,結(jié)合實(shí)例形式總結(jié)分析了Java線程join方法的功能、原理及使用技巧,需要的朋友可以參考下
    2019-11-11
  • 詳細(xì)分析JAVA8新特性 Base64

    詳細(xì)分析JAVA8新特性 Base64

    這篇文章主要介紹了JAVA8新特性 Base64的相關(guān)資料,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-08-08
  • 使用Springboot注入帶參數(shù)的構(gòu)造函數(shù)實(shí)例

    使用Springboot注入帶參數(shù)的構(gòu)造函數(shù)實(shí)例

    這篇文章主要介紹了使用Springboot注入帶參數(shù)的構(gòu)造函數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-04-04
  • 如何用Stream解決兩層List屬性求和問(wèn)題

    如何用Stream解決兩層List屬性求和問(wèn)題

    這篇文章主要介紹了如何用Stream解決兩層List屬性求和問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Java使用mapstruct實(shí)現(xiàn)對(duì)象拷貝

    Java使用mapstruct實(shí)現(xiàn)對(duì)象拷貝

    MapStruct可以簡(jiǎn)化對(duì)象之間的映射,本文就來(lái)介紹一下Java使用mapstruct實(shí)現(xiàn)對(duì)象拷貝,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-12-12
  • java抓取網(wǎng)頁(yè)數(shù)據(jù)獲取網(wǎng)頁(yè)中所有的鏈接實(shí)例分享

    java抓取網(wǎng)頁(yè)數(shù)據(jù)獲取網(wǎng)頁(yè)中所有的鏈接實(shí)例分享

    java抓取網(wǎng)頁(yè)數(shù)據(jù)獲取網(wǎng)頁(yè)中所有的鏈接實(shí)例分享,使用方法,只要實(shí)例化HtmlParser時(shí)傳入網(wǎng)頁(yè)地址就可以了
    2013-12-12
  • mybatis-plus更新字段為null的處理方式

    mybatis-plus更新字段為null的處理方式

    這篇文章主要介紹了mybatis-plus更新字段為null的處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08

最新評(píng)論

日日摸夜夜添夜夜添毛片性色av| 中文字幕最新久久久| 中国黄片视频一区91| 欧美亚洲自偷自拍 在线| 沈阳熟妇28厘米大战黑人| 一区国内二区日韩三区欧美| 91在线视频在线精品3| 精品少妇一二三视频在线| 中国黄片视频一区91| 999热精品视频在线| 成人亚洲精品国产精品| 成年午夜免费无码区| 亚国产成人精品久久久| 国产福利小视频免费观看| 97人妻总资源视频| 亚洲高清国产一区二区三区| 成人精品视频99第一页| 中出中文字幕在线观看| 亚洲老熟妇日本老妇| 超pen在线观看视频公开97| 中文乱理伦片在线观看| 亚洲福利精品福利精品福利| 亚洲熟妇久久无码精品| 97成人免费在线观看网站| 少妇人妻久久久久视频黄片| www久久久久久久久久久| 超碰97人人做人人爱| 亚洲一级 片内射视正片| 青青青艹视频在线观看| 人人在线视频一区二区| 国产一区二区神马久久| 91啪国自产中文字幕在线| 韩国男女黄色在线观看| 老司机福利精品免费视频一区二区 | 日本精品一区二区三区在线视频。| 香蕉片在线观看av| 天美传媒mv视频在线观看| 国产av欧美精品高潮网站| 少妇ww搡性bbb91| 成熟丰满熟妇高潮xx×xx| 亚洲一区二区三区精品乱码| 激情人妻校园春色亚洲欧美| 人妻无码色噜噜狠狠狠狠色| 一区二区三区的久久的蜜桃的视频| 大香蕉日本伊人中文在线| 日本最新一二三区不卡在线 | 在线观看一区二区三级| 午夜婷婷在线观看视频| www骚国产精品视频| 熟女人妻在线观看视频| 亚洲国产成人无码麻豆艾秋| 美女福利写真在线观看视频| 97欧洲一区二区精品免费| 人妻激情图片视频小说| 日本丰满熟妇大屁股久久| 99久久成人日韩欧美精品| 毛片一级完整版免费| 欧美美女人体视频一区| 白白操白白色在线免费视频| 成年人黄色片免费网站| 亚洲变态另类色图天堂网| 偷拍美女一区二区三区| 亚洲欧美另类自拍偷拍色图| 青青草原网站在线观看| 国产精品日韩欧美一区二区| 在线观看视频 你懂的| 蜜桃视频在线欧美一区| 91av精品视频在线| 亚洲成人熟妇一区二区三区| 欧美日韩熟女一区二区三区| 黄色大片男人操女人逼| 性欧美激情久久久久久久| 在线 中文字幕 一区| 天天艹天天干天天操| 中文字幕第1页av一天堂网| 97人人模人人爽人人喊| 99re久久这里都是精品视频| 黄色片年轻人在线观看| 红杏久久av人妻一区| 福利一二三在线视频观看| 18禁无翼鸟成人在线| 日韩三级黄色片网站| 中文字幕免费在线免费| 欧美激情精品在线观看| 熟女人妻在线中出观看完整版| 人妻少妇中文有码精品| 欧美精品资源在线观看| 亚洲1区2区3区精华液| 黄色资源视频网站日韩| 中文字幕成人日韩欧美| 人妻无码中文字幕专区| 最新欧美一二三视频 | 亚洲嫩模一区二区三区| 精品久久久久久久久久久a√国产 日本女大学生的黄色小视频 | 亚洲成人av一区在线| 久草视频福利在线首页| 青青青青青免费视频| 国产极品精品免费视频| 欧美国产亚洲中英文字幕| AV无码一区二区三区不卡| 国产在线观看黄色视频| 蜜臀成人av在线播放| 色花堂在线av中文字幕九九| 无码日韩人妻精品久久| 91亚洲手机在线视频播放| 55夜色66夜色国产精品站| 亚洲综合在线观看免费| 伊人开心婷婷国产av| 男人靠女人的逼视频| 美女少妇亚洲精选av| 成人精品视频99第一页| 欧美一区二区三区乱码在线播放| 亚洲欧美自拍另类图片| 欧美在线精品一区二区三区视频| 好太好爽好想要免费| 人妻无码色噜噜狠狠狠狠色| 成人18禁网站在线播放| 亚洲护士一区二区三区| 国产真实乱子伦a视频| 国产精品一二三不卡带免费视频| 日韩人妻xxxxx| 亚洲最大免费在线观看| 国产精品久久久久久久精品视频| 国产亚洲精品品视频在线| 久久热久久视频在线观看| 黑人巨大的吊bdsm| 黄色无码鸡吧操逼视频| 日本五十路熟新垣里子| 亚洲高清自偷揄拍自拍| 天天躁夜夜躁日日躁a麻豆| 青青青青操在线观看免费| 啪啪啪啪啪啪啪免费视频| 亚洲 色图 偷拍 欧美| 亚洲伊人久久精品影院一美女洗澡| 日韩a级黄色小视频| 999久久久久999| 在线免费观看黄页视频| 国产精品成人xxxx| 日韩欧美制服诱惑一区在线| 日本av在线一区二区三区| 蜜桃色婷婷久久久福利在线| 免费十精品十国产网站| 91精品国产观看免费| 在线免费观看黄页视频| 午夜青青草原网在线观看| 最后99天全集在线观看| 国产福利小视频免费观看| 欧美男人大鸡吧插女人视频| 少妇人妻久久久久视频黄片| 伊人情人综合成人久久网小说| av中文字幕电影在线看| 免费成人av中文字幕| 一级黄色av在线观看| 中文字幕乱码人妻电影| 国产成人无码精品久久久电影| 99re久久这里都是精品视频| 人人在线视频一区二区| 少妇人妻二三区视频| 男人天堂色男人av| 成人H精品动漫在线无码播放| 2018在线福利视频| 337p日本大胆欧美人| 五色婷婷综合狠狠爱| 顶级尤物粉嫩小尤物网站| 欧洲亚洲欧美日韩综合| 亚洲精品亚洲人成在线导航| 日韩美在线观看视频黄| 精品国产污污免费网站入口自| 亚洲第17页国产精品| 欧美国产亚洲中英文字幕| 亚洲1区2区3区精华液| 中文字幕第1页av一天堂网| 绝顶痉挛大潮喷高潮无码| 91国内精品自线在拍白富美| 日韩一个色综合导航| 中文字幕+中文字幕| 和邻居少妇愉情中文字幕| 熟女人妻在线中出观看完整版| 2022天天干天天操| japanese日本熟妇另类| 国产精品系列在线观看一区二区 | 一区二区麻豆传媒黄片| 在线观看av亚洲情色| 91麻豆精品传媒国产黄色片| 中文字母永久播放1区2区3区| 中国黄色av一级片| 成人综合亚洲欧美一区 | 国产午夜福利av导航| 91chinese在线视频| AV天堂一区二区免费试看| 男女啪啪视频免费在线观看| 福利在线视频网址导航 | 亚洲国产香蕉视频在线播放| 888亚洲欧美国产va在线播放| 日本美女成人在线视频| 99精品视频在线观看免费播放| 日视频免费在线观看| 超碰在线中文字幕一区二区| 岳太深了紧紧的中文字幕| 国产精品自拍视频大全| 99热国产精品666| 最新国产精品拍在线观看| 免费成人av中文字幕| 亚洲熟女女同志女同| 日韩伦理短片在线观看| 大鸡巴操娇小玲珑的女孩逼| 青娱乐极品视频青青草| 自拍偷拍亚洲另类色图| 真实国产乱子伦一区二区| 黄色在线观看免费观看在线| 中文字幕免费在线免费| 中文字幕综合一区二区| 五十路息与子猛烈交尾视频| 99精品国产自在现线观看| 91成人精品亚洲国产| av老司机精品在线观看| 9色精品视频在线观看| 久久永久免费精品人妻专区| 亚洲丝袜老师诱惑在线观看| av乱码一区二区三区| 久久综合老鸭窝色综合久久| 自拍偷拍亚洲另类色图| 老有所依在线观看完整版| 天天干夜夜操啊啊啊| 2022精品久久久久久中文字幕| 欧美aa一级一区三区四区| 亚洲中文精品人人免费| 青青青青青操视频在线观看| 1000部国产精品成人观看视频 | 视频一区 视频二区 视频| mm131美女午夜爽爽爽| 亚洲激情偷拍一区二区 | 日本熟妇丰满厨房55| 宅男噜噜噜666免费观看| 中文字母永久播放1区2区3区 | 中文字幕在线免费第一页| 成年人黄色片免费网站| 欧美性受xx黑人性猛交| 亚洲图库另类图片区| 日本美女性生活一级片| 人妻最新视频在线免费观看| 中文字幕无码一区二区免费| www骚国产精品视频| 欧美aa一级一区三区四区| 婷婷激情四射在线观看视频| 青青青青青青青在线播放视频| 国产精品一区二区av国| 亚洲精品久久综合久| 特一级特级黄色网片| 骚货自慰被发现爆操| 亚洲2021av天堂| 午夜久久香蕉电影网| 国产清纯美女al在线| 天堂中文字幕翔田av| 日韩精品中文字幕播放| 啊啊啊想要被插进去视频| 黄色大片免费观看网站| 国产精品久久综合久久| 天天插天天狠天天操| 91精品国产91青青碰| 一区二区视频在线观看免费观看 | 久久热久久视频在线观看| 国产日本欧美亚洲精品视| 大鸡八强奸视频在线观看| 亚洲中文字幕乱码区| 国产亚洲视频在线观看| 欧美一级色视频美日韩| 大屁股熟女一区二区三区| 国产日本精品久久久久久久| 亚洲一区久久免费视频| 天天躁日日躁狠狠躁av麻豆| 欧美日本在线观看一区二区| 国产黄色片在线收看| 欧美色婷婷综合在线| 日本性感美女三级视频| 中文字幕 亚洲av| asmr福利视频在线观看| 操日韩美女视频在线免费看| 91免费观看国产免费| 一区二区久久成人网| 日韩欧美在线观看不卡一区二区| 男生用鸡操女生视频动漫| 91一区精品在线观看| 女生自摸在线观看一区二区三区 | 欧美黑人性猛交xxxxⅹooo| 韩国爱爱视频中文字幕| 黑人性生活视频免费看| 激情综合治理六月婷婷| 国产精品国产精品一区二区| 欧美精品一二三视频| 欧美日本在线视频一区| 日本18禁久久久久久| 亚洲激情,偷拍视频| 日韩在线中文字幕色| 啪啪啪18禁一区二区三区 | 国产精品人久久久久久| 大白屁股精品视频国产| 色吉吉影音天天干天天操| 久久h视频在线观看| 中文字幕一区二区自拍| 色秀欧美视频第一页| 青青尤物在线观看视频网站| 2021年国产精品自拍| 国产亚洲天堂天天一区| 手机看片福利盒子日韩在线播放| 精品国产乱码一区二区三区乱| 在线视频这里只有精品自拍| 精品久久久久久高潮| 亚洲图片偷拍自拍区| 老师让我插进去69AV| 快点插进来操我逼啊视频| 中文字幕av熟女人妻| 极品丝袜一区二区三区| 天堂av中文在线最新版| 男生舔女生逼逼视频| 淫秽激情视频免费观看| 任我爽精品视频在线播放| 国产使劲操在线播放| 日本高清成人一区二区三区| 中文字幕在线永久免费播放| 青娱乐蜜桃臀av色| 黄色三级网站免费下载| 啊啊好慢点插舔我逼啊啊啊视频| 亚洲自拍偷拍综合色| 91福利在线视频免费观看| 视频 一区二区在线观看| 蝴蝶伊人久久中文娱乐网| 亚洲综合另类欧美久久| 亚洲综合乱码一区二区| 日本特级片中文字幕| 日本熟女50视频免费| 午夜毛片不卡免费观看视频| 天天干天天操天天扣| 99精品免费久久久久久久久a| 亚洲精品三级av在线免费观看| 扒开腿挺进肉嫩小18禁视频| 超黄超污网站在线观看| 亚洲国产在人线放午夜| 中文字幕在线乱码一区二区| 久久尻中国美女视频| 3D动漫精品啪啪一区二区下载| 日韩三级电影华丽的外出| 免费在线福利小视频| 护士小嫩嫩又紧又爽20p| 国产精品手机在线看片| 91传媒一区二区三区| 国产一区二区久久久裸臀| 97超碰人人搞人人| 国产精品久久久久久美女校花| 国产日韩欧美视频在线导航| 99久久中文字幕一本人| 在线不卡日韩视频播放| 三级av中文字幕在线观看| 日韩无码国产精品强奸乱伦| 三上悠亚和黑人665番号| 中文字幕 亚洲av| 夜夜骑夜夜操夜夜奸| 馒头大胆亚洲一区二区| 中文字幕在线欧美精品| 大屁股熟女一区二区三区| 在线观看亚洲人成免费网址| 55夜色66夜色国产精品站| 在线网站你懂得老司机| 天天日天天添天天爽| 中文字幕高清资源站| 天天夜天天日天天日| 欧美日韩高清午夜蜜桃大香蕉| 日本少妇人妻xxxxxhd| 精彩视频99免费在线| 阴茎插到阴道里面的视频| 国产在线观看黄色视频| av森泽佳奈在线观看| 国产三级影院在线观看| 91色九色porny| 成人24小时免费视频| 精品国产成人亚洲午夜| 伊人开心婷婷国产av| 亚洲男人的天堂a在线| 亚洲免费国产在线日韩| 国产三级影院在线观看| 91精品国产91青青碰| 97资源人妻免费在线视频| 青青草精品在线视频观看| 偷拍美女一区二区三区| 欧美黄片精彩在线免费观看| 天天日天天干天天要| 久久久久久cao我的性感人妻 | 日本在线一区二区不卡视频| 天天日天天透天天操| 久久国产精品精品美女| 熟女人妻一区二区精品视频| av一区二区三区人妻| 美女福利视频导航网站| 亚洲欧美成人综合视频| 在线观看免费视频色97| 日比视频老公慢点好舒服啊| 丝袜长腿第一页在线| 少妇露脸深喉口爆吞精| 999九九久久久精品| 亚洲 清纯 国产com| www日韩a级s片av| 66久久久久久久久久久| 精品乱子伦一区二区三区免费播| 天码人妻一区二区三区在线看| 中文字幕乱码av资源| 嫩草aⅴ一区二区三区| 中国熟女一区二区性xx| 和邻居少妇愉情中文字幕| 一区二区三区av高清免费| 任你操任你干精品在线视频| 涩爱综合久久五月蜜臀| 夜色17s精品人妻熟女| 中英文字幕av一区| 99精品国产aⅴ在线观看| 91超碰青青中文字幕| 青青青青青青青青青青草青青| 欧美第一页在线免费观看视频| 亚洲精品久久综合久| 国产精品日韩欧美一区二区| 人妻最新视频在线免费观看| 9色精品视频在线观看| 亚洲粉嫩av一区二区三区| 国产欧美精品不卡在线| av中文字幕在线导航| 免费高清自慰一区二区三区网站 | 青青青aaaa免费| 黄色录像鸡巴插进去| 黄色男人的天堂视频| 国产不卡av在线免费| caoporn蜜桃视频| 亚洲 欧美 自拍 偷拍 在线| 巨乳人妻日下部加奈被邻居中出| 国产av国片精品一区二区| 久久久久久九九99精品| 无套猛戳丰满少妇人妻| 制丝袜业一区二区三区| 精品亚洲在线免费观看| 天天操夜夜骑日日摸| 亚洲综合另类精品小说| 亚洲一级特黄特黄黄色录像片| av新中文天堂在线网址| 天天日天天干天天舔天天射| 亚洲午夜精品小视频| 日韩欧美一级aa大片| 一区二区三区蜜臀在线| 中文字幕乱码av资源| 美女在线观看日本亚洲一区| 成人性爱在线看四区| 经典av尤物一区二区| 男人天堂最新地址av| 亚洲国产成人在线一区| av网站色偷偷婷婷网男人的天堂| 在线观看911精品国产| 91一区精品在线观看| 中文字幕网站你懂的| 91麻豆精品91久久久久同性| 日韩熟女系列一区二区三区| 免费高清自慰一区二区三区网站| 色秀欧美视频第一页| 中文 成人 在线 视频| 国产成人午夜精品福利| 亚洲 中文 自拍 另类 欧美| 中文字幕一区二区人妻电影冢本| 亚洲成人情色电影在线观看| 在线观看视频一区麻豆| 欧美熟妇一区二区三区仙踪林| 国产a级毛久久久久精品| av在线免费观看亚洲天堂| 亚洲日本一区二区久久久精品| 中文字幕乱码人妻电影| 视频久久久久久久人妻| 国产三级片久久久久久久| 国产污污污污网站在线| 精品久久婷婷免费视频| 五十路熟女人妻一区二区9933| 日韩成人免费电影二区| 中文字幕欧美日韩射射一| 丰满的子国产在线观看| 欧美黑人巨大性xxxxx猛交| 在线观看日韩激情视频| 激情人妻校园春色亚洲欧美| 中文字幕人妻一区二区视频| 蜜桃色婷婷久久久福利在线| 2019av在线视频| 日本www中文字幕| 日韩加勒比东京热二区| 国产精品中文av在线播放| 狠狠鲁狠狠操天天晚上干干| 亚洲最大免费在线观看| 日本一二三中文字幕| 91国内精品自线在拍白富美| 欧洲欧美日韩国产在线| 一区二区三区激情在线| av天堂中文免费在线| 中文字幕第1页av一天堂网| 中文字幕第三十八页久久| 最新欧美一二三视频| 亚洲免费视频欧洲免费视频| 亚洲欧美综合另类13p| 福利视频一区二区三区筱慧| 欧美中文字幕一区最新网址| 日本美女性生活一级片| 亚洲国产40页第21页| 亚洲少妇高潮免费观看| 新97超碰在线观看| 国产精品人妻熟女毛片av久| 亚洲男人的天堂a在线| 97成人免费在线观看网站| 免费成人va在线观看| 国产极品精品免费视频| 亚洲综合另类精品小说| 亚洲免费在线视频网站| 日本五十路熟新垣里子| 999热精品视频在线| 免费观看丰满少妇做受| 亚洲在线免费h观看网站| 国产午夜亚洲精品麻豆| 色秀欧美视频第一页| 天天摸天天干天天操科普| 亚洲免费成人a v| 欧美黑人巨大性xxxxx猛交| 欧美男同性恋69视频| 亚洲一区二区三区久久受| 久久久制服丝袜中文字幕| 大陆胖女人与丈夫操b国语高清| 国产精品精品精品999| 久久午夜夜伦痒痒想咳嗽P| 国产夫妻视频在线观看免费| 国产1区,2区,3区| 唐人色亚洲av嫩草| 欧美激情精品在线观看| 88成人免费av网站| 不卡日韩av在线观看| 沈阳熟妇28厘米大战黑人| 天天日天天做天天日天天做| 日韩精品中文字幕福利| 人人妻人人爱人人草| 成人24小时免费视频| 亚洲少妇人妻无码精品| 极品性荡少妇一区二区色欲| 美女福利写真在线观看视频| 亚洲精品午夜aaa久久| 老师啊太大了啊啊啊尻视频| 啪啪啪操人视频在线播放| 天天躁日日躁狠狠躁av麻豆| 狠狠操狠狠操免费视频| 欧美aa一级一区三区四区| 久久久噜噜噜久久熟女av| 成人国产影院在线观看| 午夜婷婷在线观看视频| 成人综合亚洲欧美一区| 黑人3p华裔熟女普通话| 天天干天天操天天扣| 人人人妻人人澡人人| 夫妻在线观看视频91| 欧美xxx成人在线| 国产极品美女久久久久久| 天天操天天弄天天射| 亚洲粉嫩av一区二区三区| 在线观看免费av网址大全| 国产精品自拍偷拍a| 日本一区美女福利视频| 97精品视频在线观看| 边摸边做超爽毛片18禁色戒| 欧美日韩在线精品一区二区三| 玖玖一区二区在线观看| 天天操天天射天天操天天天| 日日操综合成人av| 亚洲成人激情视频免费观看了| 免费看美女脱光衣服的视频| 亚洲的电影一区二区三区| 中文字幕日韩91人妻在线| 男人操女人的逼免费视频| 激情色图一区二区三区| 超碰97人人做人人爱| 香蕉91一区二区三区| 综合激情网激情五月天| 黑人巨大精品欧美视频| 性欧美激情久久久久久久| 亚洲人妻av毛片在线| 在线不卡日韩视频播放| 人妻丝袜榨强中文字幕| 性欧美激情久久久久久久| 久久久极品久久蜜桃| 国产黄网站在线观看播放| 免费在线看的黄网站| 欲满人妻中文字幕在线| 最新日韩av传媒在线| 中国熟女一区二区性xx| 99精品视频之69精品视频 | 中文字幕乱码av资源| 日本美女性生活一级片| 色呦呦视频在线观看视频| 中文字幕一区二区三区蜜月| 91超碰青青中文字幕| 国产性生活中老年人视频网站| av视网站在线观看| 黄片大全在线观看观看| 日本美女性生活一级片| 日本精品视频不卡一二三| av网站色偷偷婷婷网男人的天堂| 小穴多水久久精品免费看| 欧美视频不卡一区四区| 夏目彩春在线中文字幕| 中文字幕日韩精品日本| 亚洲精品久久综合久| 大黑人性xxxxbbbb| 男人和女人激情视频| 97人人模人人爽人人喊| 亚洲久久午夜av一区二区| 亚洲天堂有码中文字幕视频| 人妻无码中文字幕专区| 国产a级毛久久久久精品| 久青青草视频手机在线免费观看 | 九九视频在线精品播放| 午夜av一区二区三区| 午夜美女少妇福利视频| 午夜dv内射一区区| 色爱av一区二区三区| 美日韩在线视频免费看| 美女少妇亚洲精选av| gav成人免费播放| 沙月文乃人妻侵犯中文字幕在线 | 亚洲av无硬久久精品蜜桃| 亚洲 清纯 国产com| av在线资源中文字幕| 国产精品久久久久网| 大胸性感美女羞爽操逼毛片| 久草视频 久草视频2| 亚洲国产美女一区二区三区软件| 亚洲成人av一区久久| 亚洲福利精品福利精品福利| 欧美日韩熟女一区二区三区| 新97超碰在线观看| 国产97在线视频观看| 99精品视频之69精品视频| 最新国产精品网址在线观看| 超碰中文字幕免费观看| 国产精品入口麻豆啊啊啊| 日韩欧美亚洲熟女人妻| 久久免费看少妇高潮完整版| 偷青青国产精品青青在线观看 | 国产在线91观看免费观看| 亚洲高清视频在线不卡| 一区二区三区 自拍偷拍| 很黄很污很色的午夜网站在线观看| 国产精品视频资源在线播放 | 18禁无翼鸟成人在线| 日韩在线中文字幕色| 久久久麻豆精亚洲av麻花| 亚洲国产香蕉视频在线播放| 欧美特级特黄a大片免费| 天天日天天干天天搡| 成人久久精品一区二区三区| 在线观看日韩激情视频| 亚洲av色香蕉一区二区三区| 全国亚洲男人的天堂| 日本一本午夜在线播放| 日韩剧情片电影在线收看| 激情小视频国产在线| 一区二区三区毛片国产一区| 粗大的内捧猛烈进出爽大牛汉子| 91色九色porny| 人妻3p真实偷拍一二区| 亚洲精品乱码久久久本| 国产黄色片在线收看| 大陆精品一区二区三区久久| 婷婷久久一区二区字幕网址你懂得| 亚洲成人午夜电影在线观看| 久久热久久视频在线观看| 亚洲一区二区三区uij| 老司机在线精品福利视频| 91中文字幕最新合集| 日本三极片视频网站观看| 青娱乐在线免费视频盛宴| 黑人变态深video特大巨大| 国产日韩精品一二三区久久久 | 大鸡吧插逼逼视频免费看 | 中文字幕在线观看国产片| 91传媒一区二区三区| 亚洲精品av在线观看| 大陆av手机在线观看| 精品成人午夜免费看| 早川濑里奈av黑人番号| 大陆av手机在线观看| 在线观看av2025| 日韩中文字幕在线播放第二页| 一区二区三区四区中文| 国产中文字幕四区在线观看| 在线视频这里只有精品自拍| 99热碰碰热精品a中文| 非洲黑人一级特黄片| 国产夫妻视频在线观看免费| 亚洲欧洲一区二区在线观看| 被大鸡吧操的好舒服视频免费| 姐姐的朋友2在线观看中文字幕| 国产精品黄大片在线播放| 青青青青青免费视频| 宅男噜噜噜666国产| 黄页网视频在线免费观看| 欧美在线一二三视频| 91chinese在线视频| 久久综合老鸭窝色综合久久| 国产又粗又黄又硬又爽| 在线观看视频网站麻豆| 国产精品人妻66p| 欧美亚洲自偷自拍 在线| sw137 中文字幕 在线| 亚洲精品在线资源站| 国产精品一区二区av国| 在线观看免费视频色97| 精品亚洲中文字幕av| 在线观看av亚洲情色| 日本午夜久久女同精女女| 老司机福利精品视频在线| 少妇人妻久久久久视频黄片| 超碰在线中文字幕一区二区| 免费av岛国天堂网站| 男人操女人逼逼视频网站| 久久久久五月天丁香社区| 欧美亚洲免费视频观看| 国产无遮挡裸体免费直播视频| 亚洲一级av大片免费观看| 粉嫩av蜜乳av蜜臀| 欧美日韩高清午夜蜜桃大香蕉| 男人靠女人的逼视频| 精品欧美一区二区vr在线观看| 在线观看av2025| 天天操天天操天天碰| 欧美区一区二区三视频| 亚洲无码一区在线影院| 一区二区三区视频,福利一区二区 丰满的子国产在线观看 | 亚洲综合一区成人在线| 中文字幕av第1页中文字幕| 亚洲欧美成人综合在线观看| 亚洲午夜福利中文乱码字幕| 亚洲天堂第一页中文字幕| 久久www免费人成一看片| 亚洲国产精品免费在线观看| 丝袜长腿第一页在线| 午夜激情久久不卡一区二区| 日本人妻欲求不满中文字幕| 女同性ⅹxx女同hd| 人妻少妇精品久久久久久| 欧美精产国品一二三产品价格 | 日本三极片视频网站观看| 92福利视频午夜1000看| 国内资源最丰富的网站| 九一传媒制片厂视频在线免费观看| 午夜精品福利一区二区三区p| 扒开让我视频在线观看| 青青青青青手机视频| sejizz在线视频| 亚洲熟妇x久久av久久| www日韩毛片av| 亚洲特黄aaaa片| 精品黑人巨大在线一区| 国产亚洲精品品视频在线| 老司机深夜免费福利视频在线观看| 国产精品国色综合久久| 521精品视频在线观看| 内射久久久久综合网| 久久久久久久久久性潮| 欧美亚洲免费视频观看| 人妻凌辱欧美丰满熟妇| 夜夜嗨av蜜臀av| 久久久久久久亚洲午夜综合福利| 成人影片高清在线观看| 国产成人精品福利短视频| 久久久精品欧洲亚洲av| 韩国女主播精品视频网站| 欧美亚洲免费视频观看| 中英文字幕av一区| 3D动漫精品啪啪一区二区下载| 国产清纯美女al在线| 亚洲成人熟妇一区二区三区| 可以免费看的www视频你懂的| 高潮视频在线快速观看国家快速| 亚洲在线一区二区欧美| 大香蕉日本伊人中文在线| 青青青青爽手机在线| 经典国语激情内射视频| 中文字幕第一页国产在线| 国产av一区2区3区| 日本后入视频在线观看| 最新国产精品网址在线观看| 亚洲男人在线天堂网| 久久久久久性虐视频| 久草视频在线免播放| 91国产在线视频免费观看| 亚洲高清免费在线观看视频| 精品国产午夜视频一区二区| 国产一区二区在线欧美| 日韩午夜福利精品试看| 男人天堂色男人av| 玖玖一区二区在线观看| 丰满少妇人妻xxxxx| 日本在线不卡免费视频| 欧美色婷婷综合在线| 成年美女黄网站18禁久久| 中英文字幕av一区| 天天日天天舔天天射进去| 亚洲推理片免费看网站| 1000小视频在线| 啊啊好大好爽啊啊操我啊啊视频| 久久久制服丝袜中文字幕| 精彩视频99免费在线| 天天日天天干天天搡| 日韩精品电影亚洲一区| 亚洲蜜臀av一区二区三区九色| 欧美精品欧美极品欧美视频| 日韩少妇人妻精品无码专区| 成人高潮aa毛片免费| 最新中文字幕免费视频| 久久久人妻一区二区| 国内精品在线播放第一页| 18禁免费av网站| 中文字幕人妻一区二区视频| 亚洲中文字幕校园春色| 性感美女高潮视频久久久| 国产精品亚洲在线观看| 国产三级影院在线观看| 2022国产综合在线干| 黄片三级三级三级在线观看| 美女福利写真在线观看视频| 亚洲中文字幕校园春色| 日本免费午夜视频网站| 天天躁夜夜躁日日躁a麻豆| 特黄老太婆aa毛毛片| 国产91嫩草久久成人在线视频| 骚逼被大屌狂草视频免费看| 快点插进来操我逼啊视频| 精品高跟鞋丝袜一区二区| 中文字幕av一区在线观看| 欧美一区二区中文字幕电影 | 亚洲一区二区三区精品视频在线 | 2018在线福利视频| 欧美伊人久久大香线蕉综合| 不卡精品视频在线观看| 污污小视频91在线观看| 超pen在线观看视频公开97| 国产精品久久综合久久| 日本真人性生活视频免费看| aaa久久久久久久久| 视频一区二区综合精品| 97超碰人人搞人人| 日韩少妇人妻精品无码专区| 天天干天天操天天扣| 日本午夜爽爽爽爽爽视频在线观看 | 日本人妻欲求不满中文字幕| 亚洲精品国产在线电影| 成人av免费不卡在线观看| 欧美视频一区免费在线| 中文字幕最新久久久| 久久这里只有精彩视频免费| 91麻豆精品秘密入口在线观看| 久久久麻豆精亚洲av麻花| 国产视频在线视频播放| 国产高清在线观看1区2区| 99av国产精品欲麻豆| gogo国模私拍视频| 久久精品国产23696| 久久久精品国产亚洲AV一| 91极品新人『兔兔』精品新作| 亚洲综合在线观看免费| 天天干天天插天天谢| 91精品视频在线观看免费| 天堂av在线播放免费| 国产黄色大片在线免费播放| 免费无毒热热热热热热久| 高清一区二区欧美系列| 日本黄色三级高清视频| 视频啪啪啪免费观看| 男人天堂最新地址av| 国产丰满熟女成人视频| 夜色撩人久久7777| 真实国模和老外性视频| 边摸边做超爽毛片18禁色戒 | 欧美精产国品一二三产品价格| 日本熟妇丰满厨房55| 狠狠躁狠狠爱网站视频| 亚洲图片偷拍自拍区| 亚洲成人精品女人久久久| 韩国AV无码不卡在线播放| 亚洲精品高清自拍av| 久草视频中文字幕在线观看| 亚洲午夜在线视频福利| 免费av岛国天堂网站| 国产成人精品av网站| 水蜜桃国产一区二区三区| 男大肉棒猛烈插女免费视频 | 人妻最新视频在线免费观看| 青青青青青免费视频| av天堂中文免费在线| 11久久久久久久久久久| aaa久久久久久久久| 99re国产在线精品| 天天操天天射天天操天天天| 岛国毛片视频免费在线观看| 欧洲日韩亚洲一区二区三区| 国产激情av网站在线观看| 人妻少妇中文有码精品| 中英文字幕av一区| 操的小逼流水的文章| av中文字幕在线导航| 一区二区三区视频,福利一区二区| 青青草在观免费国产精品| 91人妻精品久久久久久久网站| 亚洲乱码中文字幕在线| 国产91久久精品一区二区字幕| 9国产精品久久久久老师| 狠狠的往里顶撞h百合| 人妻丝袜精品中文字幕| 91精品国产综合久久久蜜| 经典av尤物一区二区| av手机在线免费观看日韩av| 国产精品人妻66p| 真实国模和老外性视频| 国产va在线观看精品| 日韩三级黄色片网站| 欧美成人黄片一区二区三区| 六月婷婷激情一区二区三区| 亚洲视频在线观看高清| 久久综合老鸭窝色综合久久| 亚洲一区二区三区精品视频在线| 成人精品视频99第一页| 99精品免费观看视频| 日本av在线一区二区三区| 女生被男生插的视频网站| 天天日天天干天天爱| 久久久久久九九99精品| 国产美女一区在线观看| 欧洲国产成人精品91铁牛tv| 黄色片黄色片wyaa| 涩爱综合久久五月蜜臀| 国产高清97在线观看视频| 一区二区三区毛片国产一区| av无限看熟女人妻另类av| 国产大学生援交正在播放| 亚洲人妻国产精品综合| 在线制服丝袜中文字幕| 美女 午夜 在线视频| 国产91嫩草久久成人在线视频| 久久久久久国产精品| 18禁精品网站久久| 午夜大尺度无码福利视频| 国产白嫩美女一区二区| 性感美女高潮视频久久久| 91在线视频在线精品3| 免费在线看的黄网站| 久久久久久久久久一区二区三区| 四川乱子伦视频国产vip| 白嫩白嫩美女极品国产在线观看| 亚洲国产香蕉视频在线播放| 特级无码毛片免费视频播放| 丰满少妇翘臀后进式| 午夜dv内射一区区| 男人的网址你懂的亚洲欧洲av| 性生活第二下硬不起来| av在线免费资源站| 年轻的人妻被夫上司侵犯| 中文字幕之无码色多多| weyvv5国产成人精品的视频| 亚洲精品麻豆免费在线观看| 成人乱码一区二区三区av| 亚洲综合图片20p| 青青青青青青青在线播放视频| 男女之间激情网午夜在线| 99精品亚洲av无码国产另类| 夏目彩春在线中文字幕| 狠狠躁夜夜躁人人爽天天天天97| 欧美在线一二三视频| 天天躁日日躁狠狠躁躁欧美av| 黄色成人在线中文字幕| 日韩亚国产欧美三级涩爱| 亚洲一区二区人妻av| 又色又爽又黄又刺激av网站| 日韩熟女系列一区二区三区| 日本少妇的秘密免费视频| 91成人在线观看免费视频| 久久这里只有精品热视频 | 精内国产乱码久久久久久| 99国内精品永久免费视频| 国产chinesehd精品麻豆| 超碰在线观看免费在线观看| 视频一区二区综合精品| 亚洲的电影一区二区三区| 天天干天天日天天谢综合156| 色综合色综合色综合色| 午夜福利人人妻人人澡人人爽| 亚洲av色香蕉一区二区三区| 国产久久久精品毛片| 青青草原网站在线观看| 中文字母永久播放1区2区3区| 91久久人澡人人添人人爽乱| 2021最新热播中文字幕| 亚洲欧美精品综合图片小说| 亚洲福利午夜久久久精品电影网| 久久久极品久久蜜桃| 福利国产视频在线观看| 国产免费av一区二区凹凸四季| 精品国产成人亚洲午夜| 在线免费观看黄页视频| 亚洲视频在线观看高清| 天天做天天干天天操天天射| 香蕉av影视在线观看| 精品欧美一区二区vr在线观看| 91精品免费久久久久久| 亚洲成人激情av在线| heyzo蜜桃熟女人妻| 黄色大片男人操女人逼| 国产揄拍高清国内精品对白| 国产熟妇人妻ⅹxxxx麻豆| 久久免看30视频口爆视频| 少妇被强干到高潮视频在线观看| 精品人妻每日一部精品| 操日韩美女视频在线免费看| 亚洲熟妇久久无码精品| 端庄人妻堕落挣扎沉沦| 欧美日韩一区二区电影在线观看| 2022中文字幕在线| 国产一区成人在线观看视频| 午夜免费观看精品视频| 99久久超碰人妻国产| 亚洲一区二区三区精品乱码| 风流唐伯虎电视剧在线观看| 亚洲高清自偷揄拍自拍| 三级黄色亚洲成人av| 一区二区三区四区视频| 午夜精品九一唐人麻豆嫩草成人| 日本一二三中文字幕| 一个人免费在线观看ww视频 | 中文字幕 亚洲av| 免费看美女脱光衣服的视频| 在线观看日韩激情视频| 女同性ⅹxx女同hd| 久久精品国产999| 日本人妻少妇18—xx| 2021最新热播中文字幕| 黄色成年网站午夜在线观看| 亚洲成人av一区在线| 黑人解禁人妻叶爱071| 天天操天天操天天碰| 青青草成人福利电影| 天天日天天爽天天干| 久久久久久久久久性潮| 久久这里只有精品热视频| 爱有来生高清在线中文字幕| 亚国产成人精品久久久| 亚洲精品国产综合久久久久久久久 | 91九色国产porny蝌蚪| 亚洲天堂精品福利成人av| 亚洲一区自拍高清免费视频| 色天天天天射天天舔| 天天操天天插天天色| 三级黄色亚洲成人av| 直接观看免费黄网站| 视频一区 视频二区 视频| 中文字幕 亚洲av| 国产精品人妻熟女毛片av久| 国产亚洲欧美另类在线观看| 直接观看免费黄网站| 啪啪啪18禁一区二区三区| 国产成人无码精品久久久电影| 丰满的继坶3中文在线观看| 男人和女人激情视频| 亚洲欧洲一区二区在线观看| 91片黄在线观看喷潮| 美女吃鸡巴操逼高潮视频| 天天干天天搞天天摸| 亚洲乱码中文字幕在线| 天天日天天添天天爽| 老熟妇凹凸淫老妇女av在线观看| 偷拍自拍福利视频在线观看| 久精品人妻一区二区三区| 国产刺激激情美女网站| 亚洲人成精品久久久久久久| 亚洲中文字幕人妻一区| 国产精品成人xxxx| 色呦呦视频在线观看视频| 2018在线福利视频| 久久久久五月天丁香社区| 在线免费观看av日韩| 亚洲欧美国产麻豆综合| 最新黄色av网站在线观看| 国产成人小视频在线观看无遮挡| 人妻丝袜av在线播放网址| 夏目彩春在线中文字幕| 精品美女久久久久久| 青青青青青青草国产| 中文字幕人妻被公上司喝醉在线| 在线观看视频 你懂的| 欧美一区二区三区在线资源 | 亚洲成人三级在线播放| 日韩精品中文字幕播放| 天天插天天色天天日| 亚洲1069综合男同| 91自产国产精品视频| 丝袜美腿欧美另类 中文字幕| 六月婷婷激情一区二区三区| 国产成人无码精品久久久电影| 美女 午夜 在线视频 | 夜夜嗨av一区二区三区中文字幕| 亚洲欧美福利在线观看| 国产精品国产三级国产午| 大胆亚洲av日韩av| 日韩近亲视频在线观看| 久久99久久99精品影院| 人妻爱爱 中文字幕| 一本久久精品一区二区| 岛国免费大片在线观看 | 18禁美女无遮挡免费| 国产亚洲欧美45p| 特级欧美插插插插插bbbbb| 国产免费高清视频视频| 亚洲第一黄色在线观看| 91麻豆精品传媒国产黄色片| 丝袜美腿欧美另类 中文字幕| 欧美精品国产综合久久| 精品高跟鞋丝袜一区二区| 岛国一区二区三区视频在线| 天天日天天干天天插舔舔| 午夜在线观看岛国av,com| 最新91九色国产在线观看| 久久精品亚洲成在人线a| 成人蜜臀午夜久久一区| 免费在线看的黄片视频| 国产高清女主播在线| 99精品国自产在线人| 激情图片日韩欧美人妻| 污污小视频91在线观看| 啊啊好慢点插舔我逼啊啊啊视频| 国产九色91在线视频| 伊人成人在线综合网| 美女 午夜 在线视频| 色呦呦视频在线观看视频| 天天躁日日躁狠狠躁躁欧美av| 超碰在线观看免费在线观看| 97a片免费在线观看| 亚洲无线观看国产高清在线| 国产精品3p和黑人大战| 国产刺激激情美女网站| 91av精品视频在线| 亚洲在线免费h观看网站| 五月色婷婷综合开心网4438| 日本裸体熟妇区二区欧美| 国产在线91观看免费观看| 青青草在观免费国产精品| weyvv5国产成人精品的视频| 午夜精彩视频免费一区| 在线免费91激情四射 | 中文字幕午夜免费福利视频| 2018最新中文字幕在线观看| 姐姐的朋友2在线观看中文字幕| 国产精品一区二区三区蜜臀av| 日韩中文字幕福利av| 国产精品人妻熟女毛片av久| 一区二区三区欧美日韩高清播放| 4个黑人操素人视频网站精品91| 日韩亚洲高清在线观看| 国产精品国产三级国产精东| 人妻久久久精品69系列| 人人爽亚洲av人人爽av| av中文字幕网址在线| 日本少妇精品免费视频| 中文字幕亚洲久久久| 国产高清女主播在线| 成人资源在线观看免费官网| 一级黄片久久久久久久久| 中文字幕综合一区二区| 国产精品人妻一区二区三区网站| 日本熟妇一区二区x x| 欧美一区二区三区啪啪同性| 亚洲av无乱一区二区三区性色| 亚洲高清免费在线观看视频| 免费成人av中文字幕| 馒头大胆亚洲一区二区| av乱码一区二区三区| 亚洲高清自偷揄拍自拍| 午夜国产免费福利av| 2021最新热播中文字幕| 40道精品招牌菜特色| sw137 中文字幕 在线| 免费在线福利小视频| 人人妻人人澡人人爽人人dvl| 女同久久精品秋霞网| 国产超码片内射在线| 国产成人精品午夜福利训2021| 免费无毒热热热热热热久| 色综合天天综合网国产成人| 亚洲免费av在线视频| 夜夜操,天天操,狠狠操| 久久久久五月天丁香社区| 国产va精品免费观看| 一区二区三区美女毛片| 激情五月婷婷综合色啪| 2018最新中文字幕在线观看| 一区二区在线观看少妇| 日韩伦理短片在线观看| 午夜久久久久久久精品熟女| 亚洲久久午夜av一区二区| 999久久久久999| 国产视频网站一区二区三区| 蜜桃专区一区二区在线观看| 午夜蜜桃一区二区三区| 九一传媒制片厂视频在线免费观看| 91国产在线免费播放| 国产成人精品福利短视频| 国产亚洲视频在线二区| 啪啪啪啪啪啪啪啪啪啪黄色| av在线观看网址av| 亚洲 中文字幕在线 日韩| 欧美日韩一级黄片免费观看| 九一传媒制片厂视频在线免费观看| 9国产精品久久久久老师| 天堂va蜜桃一区入口| 国产精品成久久久久三级蜜臀av| jiujiure精品视频在线| 337p日本大胆欧美人| 啪啪啪啪啪啪啪啪av| 中文字幕免费在线免费| 最近的中文字幕在线mv视频| 综合精品久久久久97| 欧美精产国品一二三区| 日日夜夜狠狠干视频| 欧洲国产成人精品91铁牛tv| av欧美网站在线观看| 精品日产卡一卡二卡国色天香| 国产女人被做到高潮免费视频 | 色爱av一区二区三区| 午夜在线观看一区视频| 国产真实灌醉下药美女av福利| 98精产国品一二三产区区别| av高潮迭起在线观看| 久草视频在线看免费| 80电影天堂网官网| 91九色porny蝌蚪国产成人| 中文人妻AV久久人妻水| 免费在线播放a级片| 久久精品36亚洲精品束缚| 视频 国产 精品 熟女 | 欧美少妇性一区二区三区| 欲满人妻中文字幕在线| 国产97视频在线精品| 欧美男人大鸡吧插女人视频| 婷婷五月亚洲综合在线| 激情伦理欧美日韩中文字幕| 桃色视频在线观看一区二区| 999九九久久久精品| 免费无码人妻日韩精品一区二区 | 亚洲精品精品国产综合| 最新的中文字幕 亚洲| 国产免费高清视频视频| sw137 中文字幕 在线| 91免费观看国产免费| 国产91嫩草久久成人在线视频| 欧美亚洲一二三区蜜臀| 天天摸天天日天天操| 国产一区自拍黄视频免费观看| 国产精品中文av在线播放| 亚洲1卡2卡三卡4卡在线观看 | 在线视频这里只有精品自拍| 亚洲国产欧美一区二区三区…| 白白操白白色在线免费视频| 欧美日韩亚洲国产无线码| 淫秽激情视频免费观看| 偷拍自拍视频图片免费| 国产精品欧美日韩区二区| 午夜频道成人在线91| 亚洲1卡2卡三卡4卡在线观看 | 天天干天天搞天天摸| 91亚洲国产成人精品性色| 大屁股肉感人妻中文字幕在线| 人人妻人人爱人人草| 色综合天天综合网国产成人| 美女大bxxxx内射| 日本熟妇色熟妇在线观看| 亚洲精品无码色午夜福利理论片| 免费人成黄页网站在线观看国产| 国产91久久精品一区二区字幕| 欧美香蕉人妻精品一区二区| 日韩欧美高清免费在线| 美女福利视频网址导航| 91大神福利视频网| 在线观看的a站 最新| 国产清纯美女al在线| 91精品国产观看免费| 国产老熟女伦老熟妇ⅹ| 国产精品亚洲在线观看| 熟妇一区二区三区高清版| 少妇人妻久久久久视频黄片| 伊人综合免费在线视频| 亚洲av日韩精品久久久久久hd| 日本韩国在线观看一区二区| 亚洲欧美激情人妻偷拍| 欧美在线精品一区二区三区视频| 免费成人va在线观看| 一区二区久久成人网| 精品成人午夜免费看| 亚洲天堂有码中文字幕视频| 久久精品美女免费视频| 一区二区三区综合视频| 二区中出在线观看老师| 国产成人无码精品久久久电影| 精品欧美一区二区vr在线观看 | www久久久久久久久久久| 国产成人精品午夜福利训2021| 97青青青手机在线视频| aiss午夜免费视频| 青青热久免费精品视频在线观看| 自拍偷拍亚洲另类色图| 黑人大几巴狂插日本少妇| 国产实拍勾搭女技师av在线| 中文字幕一区二区三区人妻大片| 五十路在线观看完整版| 国产亚洲国产av网站在线| 蜜桃精品久久久一区二区| 国产乱子伦一二三区| 久久久久国产成人精品亚洲午夜| 毛茸茸的大外阴中国视频| 国产亚洲精品视频合集| 国产成人综合一区2区| 国产日本精品久久久久久久| 国产一区自拍黄视频免费观看| 色狠狠av线不卡香蕉一区二区| 亚洲精品国偷自产在线观看蜜桃| 91av精品视频在线| 岛国免费大片在线观看| 人人妻人人人操人人人爽| 亚洲成人激情av在线| 国产福利在线视频一区| 国产揄拍高清国内精品对白 | 免费男阳茎伸入女阳道视频 | 激情人妻校园春色亚洲欧美| 欧美黑人性暴力猛交喷水| 91精品国产高清自在线看香蕉网 | 懂色av之国产精品| 性色av一区二区三区久久久| 久久久麻豆精亚洲av麻花| 国产精品视频男人的天堂| 久久精品国产999| 欧美亚洲中文字幕一区二区三区| 午夜极品美女福利视频| 视频久久久久久久人妻| aaa久久久久久久久| 国产乱子伦一二三区| 大鸡巴后入爆操大屁股美女| 自拍偷区二区三区麻豆| 一区二区三区麻豆福利视频| 青春草视频在线免费播放| 在线观看视频 你懂的| 国产精品精品精品999| 黄色男人的天堂视频| 欧美日韩亚洲国产无线码| 亚洲人妻视频在线网| 国产精品sm调教视频| 亚洲一区二区三区五区| 亚洲最大免费在线观看| 天天日天天爽天天爽| 久久麻豆亚洲精品av| 人妻丝袜榨强中文字幕| 亚洲精品 欧美日韩| 玩弄人妻熟妇性色av少妇| 日本黄色特一级视频| 日本高清撒尿pissing| 绝顶痉挛大潮喷高潮无码| 青青青激情在线观看视频| 免费看高清av的网站| 天天日天天敢天天干| 青草亚洲视频在线观看| 99re国产在线精品| 极品丝袜一区二区三区| 91啪国自产中文字幕在线| 亚洲av日韩精品久久久久久hd| 日本高清撒尿pissing| 夜夜操,天天操,狠狠操| 亚洲高清国产一区二区三区| 欧美性受xx黑人性猛交| 国产伊人免费在线播放| 和邻居少妇愉情中文字幕| 18禁无翼鸟成人在线| 亚洲成人线上免费视频观看| 日本人妻欲求不满中文字幕| 91 亚洲视频在线观看| 首之国产AV医生和护士小芳| av天堂中文免费在线| 日本a级视频老女人| 国产欧美精品免费观看视频| 美女小视频网站在线| 免费大片在线观看视频网站| 精品91高清在线观看| 天天操夜夜操天天操天天操| 中文字幕高清在线免费播放| 成人24小时免费视频| 久久精品国产亚洲精品166m| 人妻少妇性色欲欧美日韩| 熟女人妻在线中出观看完整版| 成年人中文字幕在线观看| free性日本少妇| 国产成人精品亚洲男人的天堂| 亚洲欧美一区二区三区爱爱动图| 欧美va亚洲va天堂va| 亚洲中文字幕乱码区| 9色精品视频在线观看| 国产一区二区视频观看| 五月激情婷婷久久综合网| 又黄又刺激的午夜小视频| 蜜桃视频在线欧美一区| av老司机精品在线观看| 成人影片高清在线观看| 日日操综合成人av| 九九视频在线精品播放| 成人综合亚洲欧美一区| 亚洲va欧美va人人爽3p| 成人区人妻精品一区二视频| 亚洲国产中文字幕啊啊啊不行了| 欧美久久一区二区伊人| 国产自拍黄片在线观看| 人妻另类专区欧美制服| 含骚鸡巴玩逼逼视频| 一区二区三区久久中文字幕| 日本韩国在线观看一区二区| 国产亚洲精品品视频在线| 天干天天天色天天日天天射| 青青青青青免费视频| av在线免费中文字幕| 国产精品午夜国产小视频| 国产精品亚洲在线观看| 蜜臀av久久久久蜜臀av麻豆| 三上悠亚和黑人665番号| 亚洲少妇人妻无码精品| 人妻少妇精品久久久久久| 日本三极片视频网站观看| 成人30分钟免费视频| 精品国产午夜视频一区二区| 五十路老熟女码av| 五月天中文字幕内射| 亚洲男人让女人爽的视频| 亚洲av香蕉一区区二区三区犇| 亚洲国产在人线放午夜| 精品国产高潮中文字幕| 亚洲精品成人网久久久久久小说| 欧美亚洲牲夜夜综合久久| 97人人模人人爽人人喊| 99re6热在线精品| 沈阳熟妇28厘米大战黑人| 粗大的内捧猛烈进出爽大牛汉子| 白白操白白色在线免费视频| 欧美日韩高清午夜蜜桃大香蕉| 国产91久久精品一区二区字幕| 天天日夜夜干天天操| 国产实拍勾搭女技师av在线| 四虎永久在线精品免费区二区| 日韩欧美一级精品在线观看| 欧美专区日韩专区国产专区| 一区二区三区麻豆福利视频| 欧美黑人与人妻精品| 亚洲 清纯 国产com| 国产美女精品福利在线| 亚洲精品 欧美日韩| 成人激情文学网人妻| 欧美精品一二三视频| 搞黄色在线免费观看| 午夜精品福利一区二区三区p| 2017亚洲男人天堂| 国产福利小视频免费观看| 中文字幕+中文字幕| 午夜激情高清在线观看| 国产精品亚洲а∨天堂免| 精品国产午夜视频一区二区| 2021天天色天天干| 大屁股肉感人妻中文字幕在线| 免费男阳茎伸入女阳道视频| 亚洲av无硬久久精品蜜桃| 丝袜国产专区在线观看| 懂色av之国产精品| 免费观看理论片完整版| 欧美成人精品在线观看| 国产精品黄片免费在线观看| 日韩a级黄色小视频| 93精品视频在线观看| 久久久久久久久久性潮| 天天干天天操天天摸天天射| 国内资源最丰富的网站| 日韩av免费观看一区| 日韩北条麻妃一区在线| 一级A一级a爰片免费免会员| 黄色视频在线观看高清无码 | 2021天天色天天干| 偷拍自拍亚洲美腿丝袜| 日本精品视频不卡一二三| 亚洲熟女综合色一区二区三区四区| 在线不卡成人黄色精品| 狠狠鲁狠狠操天天晚上干干| 一区二区三区日韩久久| 午夜激情精品福利视频| 东京热男人的av天堂| 亚洲va欧美va人人爽3p| 亚洲一区二区三区av网站| 国产黄色大片在线免费播放| 宅男噜噜噜666国产| 欧美日韩熟女一区二区三区| 久久久91蜜桃精品ad| 一区国内二区日韩三区欧美| 一区二区三区麻豆福利视频| 老司机免费视频网站在线看| 欧美国品一二三产区区别| 91免费观看在线网站| 日本xx片在线观看| 夜夜操,天天操,狠狠操| 中文字幕人妻熟女在线电影| 在线免费观看黄页视频| 激情色图一区二区三区| 日本少妇在线视频大香蕉在线观看| 边摸边做超爽毛片18禁色戒 | 欧美日韩在线精品一区二区三| 沙月文乃人妻侵犯中文字幕在线 | aⅴ精产国品一二三产品| 青青青国产片免费观看视频| 超碰97免费人妻麻豆| 精品国产乱码一区二区三区乱| 开心 色 六月 婷婷| 欧美80老妇人性视频| 特大黑人巨大xxxx| 极品粉嫩小泬白浆20p主播| 国产男女视频在线播放| gav成人免费播放| AV天堂一区二区免费试看| 男大肉棒猛烈插女免费视频| 日本在线一区二区不卡视频| 日韩美女福利视频网| 日韩欧美亚洲熟女人妻| 一区二区三区在线视频福利| 人人妻人人爽人人添夜| 亚洲精品中文字幕下载| 91大神福利视频网| 午夜精彩视频免费一区| 97人人模人人爽人人喊| 欧美日本在线观看一区二区| 国产aⅴ一线在线观看| 精品一区二区三区午夜| 美女福利视频导航网站| 日韩人妻在线视频免费| 亚洲1069综合男同| 国产97在线视频观看| 免费在线观看污污视频网站| 成人福利视频免费在线| 天堂va蜜桃一区入口| 久久精品国产23696| 一二三中文乱码亚洲乱码one| 五十路在线观看完整版| 成人H精品动漫在线无码播放| 亚洲在线一区二区欧美| 欧美xxx成人在线| 精品乱子伦一区二区三区免费播| 绝色少妇高潮3在线观看| 好太好爽好想要免费| 青青伊人一精品视频| 同居了嫂子在线播高清中文| 亚洲国产欧美一区二区三区…| 四虎永久在线精品免费区二区| 桃色视频在线观看一区二区| 少妇人妻二三区视频| 人妻熟女在线一区二区| 精品国产亚洲av一淫| 欧美久久一区二区伊人| 亚洲男人的天堂a在线| 国产av一区2区3区| 精品91自产拍在线观看一区| 偷拍自拍 中文字幕| 丝袜美腿视频诱惑亚洲无| av成人在线观看一区| 国产乱子伦一二三区| 一区二区三区视频,福利一区二区| 国产免费高清视频视频| 欧美成人综合视频一区二区| 久久综合老鸭窝色综合久久| 2022中文字幕在线| 日本熟女50视频免费| 中国黄色av一级片| 91色老99久久九九爱精品| wwwxxx一级黄色片| 久久久久久九九99精品| 中出中文字幕在线观看| 一二三区在线观看视频| 2022国产精品视频| jiuse91九色视频| 亚洲欧美人精品高清| 欧美专区日韩专区国产专区| 天堂v男人视频在线观看| 天天色天天操天天舔| 日韩美av高清在线| av大全在线播放免费| 人妻无码色噜噜狠狠狠狠色| 自拍偷拍亚洲另类色图| 亚洲成人av一区在线| 国产高清97在线观看视频| 亚洲成av人无码不卡影片一| 美女福利视频导航网站| 国产白嫩美女一区二区| 水蜜桃国产一区二区三区| 2019av在线视频| 青青草亚洲国产精品视频| 最新国产精品拍在线观看| 91九色porny国产蝌蚪视频| aⅴ精产国品一二三产品| 欧美另类z0z变态| 91桃色成人网络在线观看| aiss午夜免费视频| 久久久久久久精品老熟妇| 欧美xxx成人在线| 国产九色91在线视频| 97欧洲一区二区精品免费| 日本高清撒尿pissing| 欧洲国产成人精品91铁牛tv| 黄色男人的天堂视频| 99热国产精品666| 中文字幕日韩精品日本| 三级黄色亚洲成人av| 少妇露脸深喉口爆吞精| 午夜在线观看一区视频| 色婷婷久久久久swag精品| 欧美男同性恋69视频| 成年人黄视频在线观看| 国产成人一区二区三区电影网站 | 搡老妇人老女人老熟女| 成人色综合中文字幕| 青青草人人妻人人妻| 日日爽天天干夜夜操| 天天干天天操天天玩天天射 | 午夜精品九一唐人麻豆嫩草成人| 水蜜桃国产一区二区三区| 搞黄色在线免费观看| 亚洲综合自拍视频一区| 国产精品手机在线看片| 嫩草aⅴ一区二区三区| 国产精品一二三不卡带免费视频 | 亚洲 自拍 色综合图| 宅男噜噜噜666免费观看| 国产不卡av在线免费| 日韩av中文在线免费观看| 日本少妇的秘密免费视频| 精品国产在线手机在线| 免费看国产av网站| 黄色av网站免费在线| 在线视频精品你懂的| 极品粉嫩小泬白浆20p主播| 懂色av之国产精品| ka0ri在线视频| 亚洲一区二区三区精品视频在线 | 97人人模人人爽人人喊| 红桃av成人在线观看| 久久www免费人成一看片| 天天干天天操天天摸天天射 | 蜜桃专区一区二区在线观看| 国产精品人久久久久久| 日韩av熟妇在线观看| 国产黄网站在线观看播放| 同居了嫂子在线播高清中文| 成年人的在线免费视频| 又粗又硬又猛又爽又黄的| jiujiure精品视频在线| 免费观看成年人视频在线观看| 经典亚洲伊人第一页| 亚洲综合一区成人在线| 国产久久久精品毛片| 韩国AV无码不卡在线播放| 欧美性感尤物人妻在线免费看| 免费一级特黄特色大片在线观看 | 18禁污污污app下载| 亚洲精品高清自拍av| 久久久久久久精品成人热| 黑人进入丰满少妇视频| 午夜激情久久不卡一区二区| 亚洲女人的天堂av| 精品国产在线手机在线| 亚洲精品亚洲人成在线导航| 无忧传媒在线观看视频| 成年人免费看在线视频| 精品一线二线三线日本| 欧美性感尤物人妻在线免费看| 中国把吊插入阴蒂的视频| 香蕉aⅴ一区二区三区| 免费一级黄色av网站| 亚洲综合另类精品小说| 99热这里只有国产精品6| 日本美女成人在线视频| 福利在线视频网址导航| 日韩一区二区电国产精品| 亚洲一区二区三区五区| 成人av久久精品一区二区| 欧美视频综合第一页| 精品日产卡一卡二卡国色天香| 亚洲精品色在线观看视频| 中文字幕一区的人妻欧美日韩| 免费福利av在线一区二区三区| 超pen在线观看视频公开97| 国产成人自拍视频在线免费观看| 91 亚洲视频在线观看| 同居了嫂子在线播高清中文| 精品高跟鞋丝袜一区二区| 狠狠躁夜夜躁人人爽天天久天啪| 亚欧在线视频你懂的| av在线免费中文字幕| 狠狠操操操操操操操操操| 丰满少妇人妻xxxxx| 在线观看亚洲人成免费网址| 婷婷色国产黑丝少妇勾搭AV | 日本一二三中文字幕| 国产一线二线三线的区别在哪| 不戴胸罩引我诱的隔壁的人妻| av视屏免费在线播放| 亚洲特黄aaaa片| 中国熟女一区二区性xx| 成人精品在线观看视频| 国产白嫩美女一区二区| 日本女人一级免费片| 国产精品自拍偷拍a| 国产又大又黄免费观看| aⅴ五十路av熟女中出| 亚洲一级 片内射视正片| 9l人妻人人爽人人爽| 香蕉aⅴ一区二区三区| 欧亚日韩一区二区三区观看视频| 夜夜骑夜夜操夜夜奸| 天天操天天干天天日狠狠插| 欧美天堂av无线av欧美| 午夜国产免费福利av| 国产精品久久久久网| 天天操天天弄天天射| 免费看高清av的网站| 国产综合高清在线观看| 又大又湿又爽又紧A视频| 亚洲精品午夜久久久久| 午夜激情精品福利视频| 白白操白白色在线免费视频| av男人天堂狠狠干| 亚洲无线观看国产高清在线| 99国内精品永久免费视频| 三级黄色亚洲成人av| 精品亚洲国产中文自在线| 2022中文字幕在线| 国产福利在线视频一区| 1000部国产精品成人观看视频| 99一区二区在线观看| 51精品视频免费在线观看| 国产欧美日韩第三页| 骚货自慰被发现爆操| 中文 成人 在线 视频| 姐姐的朋友2在线观看中文字幕 | 中文字幕在线观看国产片| 欧美日韩不卡一区不区二区| 超级福利视频在线观看| 日美女屁股黄邑视频| 2022国产综合在线干| 精品黑人一区二区三区久久国产| 久久久久久久99精品| 日本a级视频老女人| 男人的天堂av日韩亚洲| 欧美日本aⅴ免费视频| 蜜桃精品久久久一区二区| 亚洲国产精品免费在线观看| 蜜臀成人av在线播放| 国产伦精品一区二区三区竹菊| 国产精品sm调教视频| 色综合久久五月色婷婷综合| 亚洲天堂av最新网址| 99亚洲美女一区二区三区| 精品久久久久久久久久中文蒉| 最新中文字幕免费视频| 午夜精品一区二区三区福利视频| 中文字母永久播放1区2区3区| 久久午夜夜伦痒痒想咳嗽P| 午夜频道成人在线91| 青青伊人一精品视频| 日韩欧美国产一区不卡| 精品黑人巨大在线一区| 美女av色播在线播放| 在线观看免费岛国av| 日韩av有码中文字幕| 国产精品久久久黄网站| 欧美乱妇无乱码一区二区| 国产乱子伦精品视频潮优女| 初美沙希中文字幕在线| 欧美综合婷婷欧美综合| 涩爱综合久久五月蜜臀| 人妻素人精油按摩中出| 久久久久只精品国产三级| 日韩美女综合中文字幕pp| av欧美网站在线观看| 免费在线福利小视频| sw137 中文字幕 在线| 55夜色66夜色国产精品站| 日本人妻精品久久久久久| avjpm亚洲伊人久久| 国产精品视频男人的天堂| 黄色大片免费观看网站| 久久久人妻一区二区| 国产美女一区在线观看| 国产又色又刺激在线视频| 亚洲欧美精品综合图片小说| 国产麻豆91在线视频| 又粗又长 明星操逼小视频| 亚洲日产av一区二区在线| 一区二区三区的久久的蜜桃的视频 | 午夜福利人人妻人人澡人人爽| 老司机福利精品免费视频一区二区| 中文字幕—97超碰网| 9色精品视频在线观看| 国产精品污污污久久| 亚洲成人黄色一区二区三区| 狠狠嗨日韩综合久久| 91亚洲精品干熟女蜜桃频道| 91一区精品在线观看| 又粗又硬又猛又爽又黄的| 性色av一区二区三区久久久| 5528327男人天堂| 精品久久久久久高潮| okirakuhuhu在线观看| 色秀欧美视频第一页| 日韩美女精品视频在线观看网站| 果冻传媒av一区二区三区| 久久精品国产23696| 久久久久久性虐视频| 青青青视频自偷自拍38碰| 欧美专区日韩专区国产专区| 日韩av有码中文字幕| yy96视频在线观看| 大鸡巴插入美女黑黑的阴毛| 蜜桃视频17c在线一区二区| 97人妻色免费视频| 欧美韩国日本国产亚洲| 少妇人妻真实精品视频| 大陆av手机在线观看| 97精品成人一区二区三区| 蜜桃精品久久久一区二区| 国产精品自拍偷拍a| 在线不卡成人黄色精品| 黄色男人的天堂视频| 成人激情文学网人妻| 好吊视频—区二区三区| 亚洲精品乱码久久久久久密桃明| 超碰在线中文字幕一区二区| 女生自摸在线观看一区二区三区| 中文字幕奴隷色的舞台50| 久草视频中文字幕在线观看| 久久久久久久久久一区二区三区 | 国产视频网站国产视频| gogo国模私拍视频| 亚洲国产在人线放午夜| 日本少妇高清视频xxxxx| 大香蕉大香蕉大香蕉大香蕉大香蕉| 一区二区三区美女毛片| 视频在线免费观看你懂得| 青青青爽视频在线播放| 日本精品视频不卡一二三| 日韩av有码一区二区三区4| 黑人性生活视频免费看| 亚洲va欧美va人人爽3p| 人妻少妇精品久久久久久| 日韩欧美亚洲熟女人妻| 亚洲特黄aaaa片| 日本一区二区三区免费小视频| 五月色婷婷综合开心网4438| 视频二区在线视频观看| 精品亚洲在线免费观看| 中文字幕av第1页中文字幕| 青青色国产视频在线| 中文字幕在线一区精品| 少妇人妻久久久久视频黄片| 黄色大片免费观看网站| 久久久久五月天丁香社区| 自拍 日韩 欧美激情| 日韩中文字幕在线播放第二页| 熟女91pooyn熟女| 黄色在线观看免费观看在线| 阴茎插到阴道里面的视频| 国产中文精品在线观看| 二区中出在线观看老师| 自拍偷拍亚洲精品第2页| 沈阳熟妇28厘米大战黑人| 孕妇奶水仑乱A级毛片免费看| 国产午夜激情福利小视频在线| 国产精品污污污久久| 亚洲av色香蕉一区二区三区| 国产一线二线三线的区别在哪| 国产成人一区二区三区电影网站| 十八禁在线观看地址免费| 国产在线拍揄自揄视频网站| 久久农村老妇乱69系列| 99一区二区在线观看| 国产一线二线三线的区别在哪 | 三级等保密码要求条款| 北条麻妃肉色丝袜视频| 99热久久极品热亚洲| 一区二区三区久久久91| 中文字幕一区二区三区人妻大片 | 女生自摸在线观看一区二区三区| 天堂av狠狠操蜜桃| 欧美少妇性一区二区三区| 成人av亚洲一区二区| 男女第一次视频在线观看| 中文字幕乱码av资源| 欧美日本在线视频一区| 婷婷五月亚洲综合在线| 伊人网中文字幕在线视频| 最新欧美一二三视频| 中文字幕日韩精品就在这里| 少妇与子乱在线观看| 涩爱综合久久五月蜜臀| 欧美成人综合视频一区二区| 91精品啪在线免费| 亚洲欧美成人综合视频| 国产+亚洲+欧美+另类| 欧美成人一二三在线网| 天天草天天色天天干| 日视频免费在线观看| 美女视频福利免费看| 大香蕉福利在线观看| 国产精品人妻熟女毛片av久| 国产三级片久久久久久久| 99亚洲美女一区二区三区| 换爱交换乱高清大片| 首之国产AV医生和护士小芳| 大尺度激情四射网站| 亚洲女人的天堂av| 欧美男人大鸡吧插女人视频| 亚洲一区二区人妻av| 欧洲国产成人精品91铁牛tv| 大鸡吧插入女阴道黄色片| 韩国男女黄色在线观看| 亚洲成a人片777777| 超碰在线中文字幕一区二区| 一色桃子久久精品亚洲| 男人插女人视频网站| 亚洲欧美一区二区三区爱爱动图 | 亚洲少妇人妻无码精品| 日本韩国亚洲综合日韩欧美国产| 在线观看911精品国产| 特黄老太婆aa毛毛片| 国产女人叫床高潮大片视频| 亚洲欧美成人综合视频| 亚洲天堂第一页中文字幕| 不卡日韩av在线观看| 超级福利视频在线观看| 精品美女福利在线观看| 92福利视频午夜1000看| 一区二区三区的久久的蜜桃的视频| 亚洲熟女久久久36d| www日韩毛片av| 狠狠地躁夜夜躁日日躁| 亚洲视频在线视频看视频在线| 国产精品黄大片在线播放| 美洲精品一二三产区区别| 十八禁在线观看地址免费| 欧美综合婷婷欧美综合| 亚洲日本一区二区久久久精品| 天堂va蜜桃一区入口| 国产夫妻视频在线观看免费| 蜜臀成人av在线播放| 日本免费午夜视频网站| 美女骚逼日出水来了| 啊啊啊想要被插进去视频| 国产片免费观看在线观看| 午夜成午夜成年片在线观看| 91传媒一区二区三区| 水蜜桃一区二区三区在线观看视频| 欧美区一区二区三视频| 成人国产小视频在线观看| 成人亚洲国产综合精品| 久久久久久国产精品| 欧美国产亚洲中英文字幕| 爱有来生高清在线中文字幕| 国产在线观看免费人成短视频| 哥哥姐姐综合激情小说| 女生自摸在线观看一区二区三区| 成人av天堂丝袜在线观看| 青青草在观免费国产精品| aaa久久久久久久久| 青青青青青青青在线播放视频| 亚洲熟妇x久久av久久| 91人妻精品一区二区在线看| 韩国一级特黄大片做受| 国产女人露脸高潮对白视频| 午夜福利人人妻人人澡人人爽| 国产一级精品综合av| 99精品免费久久久久久久久a| 黄色男人的天堂视频| 欧美日韩精品永久免费网址| 亚洲中文精品字幕在线观看| 一区二区熟女人妻视频| 中文字幕 人妻精品| 欧美亚洲牲夜夜综合久久| 精产国品久久一二三产区区别| 亚洲国产精品黑丝美女| 插逼视频双插洞国产操逼插洞 | 成人蜜臀午夜久久一区| 国产欧美精品不卡在线| 欧美日韩国产一区二区三区三州| 精内国产乱码久久久久久| 欧美区一区二区三视频| 在线播放 日韩 av| 人妻av无码专区久久绿巨人| 中文字幕最新久久久| av手机在线免费观看日韩av| 国产又大又黄免费观看| 日日操综合成人av| 欧美一区二区三区啪啪同性| 91在线免费观看成人| 人人超碰国字幕观看97| 亚洲中文精品字幕在线观看| 亚洲精品在线资源站| 三级等保密码要求条款| 欧美aa一级一区三区四区| 99热久久这里只有精品| 91久久国产成人免费网站| 日韩欧美亚洲熟女人妻| 含骚鸡巴玩逼逼视频| 一区二区三区另类在线| 国产综合精品久久久久蜜臀| 亚洲区欧美区另类最新章节| 久久久久五月天丁香社区| 年轻的人妻被夫上司侵犯| 青青伊人一精品视频| 国产老熟女伦老熟妇ⅹ| 亚洲国产美女一区二区三区软件| 年轻的人妻被夫上司侵犯| 亚洲粉嫩av一区二区三区| 91欧美在线免费观看| 欧美日韩亚洲国产无线码| 日韩美女综合中文字幕pp| 全国亚洲男人的天堂| 伊拉克及约旦宣布关闭领空| 国产视频网站国产视频| 欧美区一区二区三视频| 亚洲男人让女人爽的视频| 欧美综合婷婷欧美综合| 欧美成人综合色在线噜噜| 中文字幕亚洲中文字幕| 丰满的子国产在线观看| 特大黑人巨大xxxx| 一区二区在线观看少妇| 福利视频广场一区二区| 日本熟妇色熟妇在线观看| 91亚洲精品干熟女蜜桃频道 | 91老熟女连续高潮对白| 日本a级视频老女人| 亚洲免费在线视频网站| 扒开腿挺进肉嫩小18禁视频| 99热久久这里只有精品8| 操的小逼流水的文章| 动漫美女的小穴视频| 传媒在线播放国产精品一区| 五月色婷婷综合开心网4438| 免费黄高清无码国产| 欧洲黄页网免费观看| 亚洲精品国偷自产在线观看蜜桃| 日本三极片视频网站观看| 黄色三级网站免费下载| 在线观看的a站 最新| 亚洲男人的天堂a在线| 久久久久久久久久久久久97| 国产精品亚洲а∨天堂免| 91国偷自产一区二区三区精品| 欧美日韩v中文在线| 日视频免费在线观看| 在线观看操大逼视频| 亚洲无线观看国产高清在线| av在线免费观看亚洲天堂| 在线成人日韩av电影| 好吊视频—区二区三区| 人妻无码色噜噜狠狠狠狠色| 综合一区二区三区蜜臀| 日本特级片中文字幕| yy6080国产在线视频| 午夜在线观看一区视频| 亚洲国产精品黑丝美女| 中文字幕av男人天堂| av新中文天堂在线网址| 国产在线91观看免费观看| 极品粉嫩小泬白浆20p主播| 亚洲av自拍偷拍综合| 538精品在线观看视频| 国产九色91在线视频| 51国产成人精品视频| 亚洲欧美日韩视频免费观看| 国产一区av澳门在线观看| 亚洲国产美女一区二区三区软件| 亚洲老熟妇日本老妇| 亚洲成人线上免费视频观看| 日本特级片中文字幕| 亚洲一区二区久久久人妻| 2020国产在线不卡视频| 午夜av一区二区三区| 女生自摸在线观看一区二区三区| 久久人人做人人妻人人玩精品vr| 亚洲卡1卡2卡三卡四老狼| 亚洲午夜精品小视频| 亚洲精品乱码久久久本| 18禁美女无遮挡免费| 51国产成人精品视频| 亚洲免费福利一区二区三区| 九九视频在线精品播放| 一本一本久久a久久精品综合不卡| 亚洲国产40页第21页| 色伦色伦777国产精品| 久久久久久性虐视频| 亚洲蜜臀av一区二区三区九色| 99精品亚洲av无码国产另类| 成人影片高清在线观看| 中国黄色av一级片| 国产夫妻视频在线观看免费| 欧美一区二区中文字幕电影 | 啪啪啪啪啪啪啪免费视频| 成人高清在线观看视频| 青娱乐极品视频青青草| 国产精品亚洲а∨天堂免| 美女大bxxxx内射| 天天色天天操天天透| 免费啪啪啪在线观看视频| 丰满熟女午夜福利视频| av手机免费在线观看高潮| 丝袜国产专区在线观看| 91一区精品在线观看| 亚洲男人在线天堂网| 中文字母永久播放1区2区3区| 偷青青国产精品青青在线观看| 中文字幕乱码人妻电影| 亚洲福利天堂久久久久久 | 青草久久视频在线观看| 中国熟女一区二区性xx| 直接能看的国产av| 午夜毛片不卡免费观看视频| 欧美日韩情色在线观看| 五十路熟女人妻一区二| 夜色福利视频在线观看| 99re久久这里都是精品视频| 精品人妻伦一二三区久| 女警官打开双腿沦为性奴| 中文字幕日韩91人妻在线| 人妻另类专区欧美制服| 亚洲va天堂va国产va久| 午夜婷婷在线观看视频| 亚洲综合乱码一区二区| 国产亚洲欧美另类在线观看| 美女福利视频网址导航| 成人乱码一区二区三区av| 久久永久免费精品人妻专区 | 国产高清精品极品美女| 日韩二区视频一线天婷婷五| 男女啪啪视频免费在线观看| 美日韩在线视频免费看| 啊啊好慢点插舔我逼啊啊啊视频| 精品高跟鞋丝袜一区二区| 久草视频中文字幕在线观看| 欲乱人妻少妇在线视频裸| 精产国品久久一二三产区区别| av线天堂在线观看| 欧美亚洲国产成人免费在线| japanese五十路熟女熟妇| 大尺度激情四射网站| 韩国一级特黄大片做受| 91人妻精品一区二区在线看| 最新国产亚洲精品中文在线| 馒头大胆亚洲一区二区| 亚洲av日韩精品久久久久久hd| 日本一区二区三区免费小视频| 久久久久久久精品成人热| 亚洲午夜高清在线观看| 熟女人妻在线观看视频| 香港一级特黄大片在线播放| 中文字幕一区二区亚洲一区| 骚逼被大屌狂草视频免费看| 中文字幕乱码人妻电影| 日韩av有码一区二区三区4| 视频在线亚洲一区二区| 亚洲蜜臀av一区二区三区九色| 国产女人叫床高潮大片视频| 亚洲男人的天堂a在线| 欧美特色aaa大片| 少妇人妻真实精品视频| 亚洲成人精品女人久久久| 日本成人一区二区不卡免费在线| 国产高潮无码喷水AV片在线观看| 一色桃子久久精品亚洲| 日韩影片一区二区三区不卡免费| 中文字幕熟女人妻久久久| 亚洲另类综合一区小说| 欧美一区二区三区四区性视频| AV天堂一区二区免费试看| 五十路息与子猛烈交尾视频| 在线播放 日韩 av| 喷水视频在线观看这里只有精品 | 激情人妻校园春色亚洲欧美| 免费黄高清无码国产| 亚洲天堂精品久久久| 精品一区二区三区午夜| 天天色天天操天天透| 中文字幕第三十八页久久| 中文字幕AV在线免费看 | 天天干天天啪天天舔| 99re国产在线精品| 一本一本久久a久久精品综合不卡| 亚洲av可乐操首页| 日韩av有码中文字幕| 黄色男人的天堂视频| 欧美精产国品一二三产品价格 | 黄色的网站在线免费看| 2020韩国午夜女主播在线| 国产精品一区二区av国| 99精品视频在线观看婷婷| 美女被肏内射视频网站| 亚洲国际青青操综合网站| 国产成人精品福利短视频| 国产午夜福利av导航| 欧美亚洲一二三区蜜臀| 青青热久免费精品视频在线观看| 女警官打开双腿沦为性奴| 国产成人精品福利短视频| 91自产国产精品视频| 四川五十路熟女av| 日韩欧美一级aa大片| 精品高潮呻吟久久av| 亚欧在线视频你懂的| 亚洲偷自拍高清视频| 又粗又硬又猛又爽又黄的| 99精品久久久久久久91蜜桃| 狠狠躁狠狠爱网站视频| 中文字幕av熟女人妻| 护士特殊服务久久久久久久| 日韩三级黄色片网站| 老鸭窝日韩精品视频观看| 国产精品手机在线看片| 偷拍3456eee| av线天堂在线观看| 亚洲va欧美va人人爽3p| 夜鲁夜鲁狠鲁天天在线| 免费人成黄页网站在线观看国产| 又粗又长 明星操逼小视频| 11久久久久久久久久久| 中文字幕成人日韩欧美| 韩国黄色一级二级三级| 亚洲欧美国产综合777| 欧美一区二区三区四区性视频| 蜜臀成人av在线播放| 日本女大学生的黄色小视频| 视频在线亚洲一区二区| 国产精品伦理片一区二区| 亚洲欧美日韩视频免费观看| 国产老熟女伦老熟妇ⅹ| 人人在线视频一区二区| av天堂加勒比在线| 99精品国产自在现线观看| 欧美3p在线观看一区二区三区| 中文字幕亚洲久久久| 色综合久久久久久久久中文| 日韩欧美国产精品91| 99精品国自产在线人| 99久久99一区二区三区| 久久人人做人人妻人人玩精品vr| 天美传媒mv视频在线观看| 中文字幕av第1页中文字幕| 日本乱人一区二区三区| nagger可以指黑人吗| 在线观看免费岛国av| 天天插天天狠天天操| 把腿张开让我插进去视频| 一区二区麻豆传媒黄片| 天天日天天操天天摸天天舔 | 自拍偷拍亚洲欧美在线视频| 999九九久久久精品| 中文字幕一区二区三区人妻大片| 国产精品自拍在线视频| 亚洲精品中文字幕下载| 日本精品一区二区三区在线视频。 | 人妻另类专区欧美制服| 亚洲欧美清纯唯美另类| 护士特殊服务久久久久久久| 亚洲福利精品福利精品福利| 亚洲成a人片777777| 四虎永久在线精品免费区二区| 欧美男人大鸡吧插女人视频| 日辽宁老肥女在线观看视频| 99久久成人日韩欧美精品| 99精品一区二区三区的区| 伊人日日日草夜夜草| 中文字幕熟女人妻久久久| 免费观看污视频网站| 中文字幕一区二区亚洲一区| 看一级特黄a大片日本片黑人| 经典亚洲伊人第一页| 青青草在观免费国产精品| av大全在线播放免费| 全国亚洲男人的天堂| 色偷偷伊人大杳蕉综合网| 国产精品久久久久国产三级试频 | eeuss鲁片一区二区三区| 久久久久久久一区二区三| 五月激情婷婷久久综合网| 视频一区二区综合精品| 午夜蜜桃一区二区三区| 丰满熟女午夜福利视频| 女人精品内射国产99| 日本av高清免费网站| 大陆精品一区二区三区久久| 精品av久久久久久久| 中文字幕日韩无敌亚洲精品| 亚洲另类伦春色综合小| 2012中文字幕在线高清| 久久久久久97三级| 日本少妇精品免费视频| 久久久久久9999久久久久| 99久久中文字幕一本人| 亚洲欧美精品综合图片小说| 成人网18免费视频版国产| 涩爱综合久久五月蜜臀| 国产变态另类在线观看| 青青草亚洲国产精品视频| 骚逼被大屌狂草视频免费看| 韩国黄色一级二级三级| yy6080国产在线视频| 97人妻无码AV碰碰视频| 91人妻精品一区二区在线看| 四川五十路熟女av| 国产精品三级三级三级| 久久丁香婷婷六月天| 天天日天天做天天日天天做| 日日摸夜夜添夜夜添毛片性色av| 97超碰免费在线视频| 香港三日本三韩国三欧美三级| 被大鸡吧操的好舒服视频免费| 久草视频中文字幕在线观看| 蜜桃精品久久久一区二区| 男人天堂色男人av| 偷拍自拍 中文字幕| 青青青爽视频在线播放| 神马午夜在线观看视频| 91精品国产观看免费| 国产又色又刺激在线视频| 中文字幕在线观看极品视频| 免费黄页网站4188| 北条麻妃肉色丝袜视频| 日本一二三区不卡无| 亚洲自拍偷拍精品网| 国产亚洲精品欧洲在线观看| 精品视频国产在线观看| av一本二本在线观看| 日韩中文字幕在线播放第二页| 中文字幕一区二区三区人妻大片| 亚洲高清国产自产av| 亚洲va国产va欧美精品88| 亚洲天堂成人在线观看视频网站| 亚洲欧美国产综合777| 乱亲女秽乱长久久久| 国产janese在线播放| 性色av一区二区三区久久久 | 青青青视频手机在线观看| 欧美色婷婷综合在线| 亚洲成人线上免费视频观看| 日本裸体熟妇区二区欧美| 在线免费观看亚洲精品电影| 午夜大尺度无码福利视频| 亚洲免费国产在线日韩| 日本一区精品视频在线观看| 欧美日韩激情啪啪啪| 人人妻人人爽人人澡人人精品| 国产精品自拍偷拍a| mm131美女午夜爽爽爽| 91麻豆精品秘密入口在线观看| 9久在线视频只有精品| 婷婷久久一区二区字幕网址你懂得| 免费高清自慰一区二区三区网站| 在线观看av亚洲情色| av破解版在线观看| 亚洲精品ww久久久久久| 日本韩国免费福利精品| 国产亚洲天堂天天一区| 日韩a级黄色小视频| 揄拍成人国产精品免费看视频| 亚洲国产精品免费在线观看| 午夜精品久久久久麻豆影视| 男人的天堂一区二区在线观看| 人妻熟女中文字幕aⅴ在线| 成人福利视频免费在线| 99精品国自产在线人| 国产一区成人在线观看视频| 欧美精品一二三视频| 五十路丰满人妻熟妇| 日韩一个色综合导航| 亚洲免费福利一区二区三区| 天天干天天操天天插天天日| 97精品人妻一区二区三区精品| 成人蜜桃美臀九一一区二区三区| 又粗又硬又猛又爽又黄的| 亚洲国产欧美国产综合在线| 亚洲一区二区三区五区| www骚国产精品视频| 黄色片年轻人在线观看| 18禁美女黄网站色大片下载| 成年午夜免费无码区| 久久这里只有精彩视频免费| 欧美亚洲中文字幕一区二区三区| 欧美爆乳肉感大码在线观看| 日本三极片视频网站观看| 99精品国产aⅴ在线观看| 亚洲成人三级在线播放| 老司机午夜精品视频资源| 开心 色 六月 婷婷| 日本少妇的秘密免费视频| 五十路熟女av天堂| 美女被肏内射视频网站| 97超碰免费在线视频| 精品一区二区三区三区88| 黄色录像鸡巴插进去| 国产91嫩草久久成人在线视频| 最新97国产在线视频| 绝色少妇高潮3在线观看| 深田咏美亚洲一区二区| 国产刺激激情美女网站| 国产片免费观看在线观看| 韩国三级aaaaa高清视频| av天堂中文免费在线| 天天日天天干天天插舔舔| 狠狠躁狠狠爱网站视频 | 久久久久久久久久一区二区三区| 白嫩白嫩美女极品国产在线观看| 亚洲 清纯 国产com| 亚洲va天堂va国产va久| 性欧美激情久久久久久久|