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

EhCache緩存系統在集成環境中的使用詳解

開發 后端 架構
EhCache 是一個純 Java 的進程內緩存框架,具有快速、精干等特點,是 Hibernate 中默認的 CacheProvider。

EhCache 是一個純 Java 的進程內緩存框架,具有快速、精干等特點,是 Hibernate 中默認的 CacheProvider。

下圖是 EhCache 在應用程序中的位置:

圖 1. EhCache 應用架構圖

圖 1. EhCache 應用架構圖

EhCache 的主要特性有:

  1. 快速;
  2. 簡單;
  3. 多種緩存策略;
  4. 緩存數據有兩級:內存和磁盤,因此無需擔心容量問題;
  5. 緩存數據會在虛擬機重啟的過程中寫入磁盤;
  6. 可以通過 RMI、可插入 API 等方式進行分布式緩存;
  7. 具有緩存和緩存管理器的偵聽接口;
  8. 支持多緩存管理器實例,以及一個實例的多個緩存區域;
  9. 提供 Hibernate 的緩存實現;
  10. 等等 …

由于 EhCache 是進程中的緩存系統,一旦將應用部署在集群環境中,每一個節點維護各自的緩存數據,當某個節點對緩存數據進行更新,這些更新的數據無法在其它節點中共享,這不僅會降低節點運行的效率,而且會導致數據不同步的情況發生。例如某個網站采用 A、B 兩個節點作為集群部署,當 A 節點的緩存更新后,而 B 節點緩存尚未更新就可能出現用戶在瀏覽頁面的時候,一會是更新后的數據,一會是尚未更新的數據,盡管我們也可以通過 Session Sticky 技術來將用戶鎖定在某個節點上,但對于一些交互性比較強或者是非 Web 方式的系統來說,Session Sticky 顯然不太適合。所以就需要用到 EhCache 的集群解決方案。

EhCache 從 1.7 版本開始,支持五種集群方案,分別是:

  • Terracotta
  • RMI
  • JMS
  • JGroups
  • EhCache Server

本文主要介紹其中的三種最為常用集群方式,分別是 RMI、JGroups 以及 EhCache Server 。

RMI 集群模式

RMI 是 Java 的一種遠程方法調用技術,是一種點對點的基于 Java 對象的通訊方式。EhCache 從 1.2 版本開始就支持 RMI 方式的緩存集群。在集群環境中 EhCache 所有緩存對象的鍵和值都必須是可序列化的,也就是必須實現 java.io.Serializable 接口,這點在其它集群方式下也是需要遵守的。

下圖是 RMI 集群模式的結構圖:

圖 2. RMI 集群模式結構圖

圖 2. RMI 集群模式結構圖

采用 RMI 集群模式時,集群中的每個節點都是對等關系,并不存在主節點或者從節點的概念,因此節點間必須有一個機制能夠互相認識對方,必須知道其它節點的信息,包括主機地址、端口號等。EhCache 提供兩種節點的發現方式:手工配置和自動發現。手工配置方式要求在每個節點中配置其它所有節點的連接信息,一旦集群中的節點發生變化時,需要對緩存進行重新配置。

由于 RMI 是 Java 中內置支持的技術,因此使用 RMI 集群模式時,無需引入其它的 Jar 包,EhCache 本身就帶有支持 RMI 集群的功能。使用 RMI 集群模式需要在 ehcache.xml 配置文件中定義 cacheManagerPeerProviderFactory 節點。假設集群中有兩個節點,分別對應的 RMI 綁定信息是:

 

節點 1 192.168.0.11 4567 /oschina_cache
節點 2 192.168.0.12 4567 /oschina_cache
節點 3 192.168.0.13 4567 /oschina_cache
 

那么對應的手工配置信息如下:

  1. <cacheManagerPeerProviderFactory  
  2.  
  3.     properties="hostName=localhost, 
  4.     port=4567
  5.     socketTimeoutMillis=2000
  6.     peerDiscovery=manual, 
  7.     rmiUrls=//192.168.0.12:4567/oschina_cache|//192.168.0.13:4567/oschina_cache" 
  8. /> 

其它節點配置類似,只需把 rmiUrls 中的兩個 IP 地址換成另外兩個節點對應的 IP 地址即可。

接下來在需要進行緩存數據復制的區域(Region)上配置如下即可:

  1. <cache name="sampleCache2" 
  2.     maxElementsInMemory="10" 
  3.     eternal="false" 
  4.     timeToIdleSeconds="100" 
  5.     timeToLiveSeconds="100" 
  6.     overflowToDisk="false"
  7.     <cacheEventListenerFactory 
  8.  
  9.         properties="replicateAsynchronously=true,  
  10.     replicatePuts=true,  
  11.     replicateUpdates=true
  12.         replicateUpdatesViaCopy=false,  
  13.     replicateRemovals=true "/> 
  14. </cache> 

具體每個參數代表的意義請參考 EhCache 的手冊,此處不再詳細說明。

EhCache 的 RMI 集群模式還有另外一種節點發現方式,就是通過多播( multicast )來維護集群中的所有有效節點。這也是最為簡單而且靈活的方式,與手工模式不同的是,每個節點上的配置信息都相同,大大方便了節點的部署,避免人為的錯漏出現。

在上述三個節點的例子中,配置如下:

  1. <cacheManagerPeerProviderFactory 
  2.  
  3.     properties="peerDiscovery=automatic, multicastGroupAddress=230.0.0.1
  4.     multicastGroupPort=4446, timeToLive=32
  5. /> 

其中需要指定節點發現模式 peerDiscovery 值為 automatic 自動;同時組播地址可以指定 D 類 IP 地址空間,范圍從 224.0.1.0 到 238.255.255.255 中的任何一個地址。

#p#

JGroups 集群模式

EhCache 從 1.5. 版本開始增加了 JGroups 的分布式集群模式。與 RMI 方式相比較, JGroups 提供了一個非常靈活的協議棧、可靠的單播和多播消息傳輸,主要的缺點是配置復雜以及一些協議棧對第三方包的依賴。

JGroups 也提供了基于 TCP 的單播 ( Unicast ) 和基于 UDP 的多播 ( Multicast ) ,對應 RMI 的手工配置和自動發現。使用單播方式需要指定其它節點的主機地址和端口,下面是兩個節點,并使用了單播方式的配置:

  1. <cacheManagerPeerProviderFactory 
  2.  
  3.     properties="connect=TCP(start_port=7800): 
  4.         TCPPING(initial_hosts=host1[7800],host2[7800];port_range=10;timeout=3000
  5.         num_initial_members=3;up_thread=true;down_thread=true): 
  6.         VERIFY_SUSPECT(timeout=1500;down_thread=false;up_thread=false): 
  7.         pbcast.NAKACK(down_thread=true;up_thread=true;gc_lag=100
  8.     retransmit_timeout=3000): 
  9.         pbcast.GMS(join_timeout=5000;join_retry_timeout=2000;shun=false
  10.         print_local_addr=false;down_thread=true;up_thread=true)" 
  11. propertySeparator="::" /> 

使用多播方式配置如下:

  1. <cacheManagerPeerProviderFactory 
  2.  
  3.     properties="connect=UDP(mcast_addr=231.12.21.132;mcast_port=45566;):PING: 
  4.     MERGE2:FD_SOCK:VERIFY_SUSPECT:pbcast.NAKACK:UNICAST:pbcast.STABLE:FRAG:pbcast.GMS" 
  5.     propertySeparator="::" 
  6. /> 

從上面的配置來看,JGroups 的配置要比 RMI 復雜得多,但也提供更多的微調參數,有助于提升緩存數據復制的性能。詳細的 JGroups 配置參數的具體意義可參考 JGroups 的配置手冊。

JGroups 方式對應緩存節點的配置信息如下:

  1. <cache name="sampleCache2" 
  2.     maxElementsInMemory="10" 
  3.     eternal="false" 
  4.     timeToIdleSeconds="100" 
  5.     timeToLiveSeconds="100" 
  6.     overflowToDisk="false"
  7.     <cacheEventListenerFactory 
  8.  
  9.         properties="replicateAsynchronously=true, replicatePuts=true
  10.         replicateUpdates=true, replicateUpdatesViaCopy=false, replicateRemovals=true" /> 
  11. </cache> 

使用組播方式的注意事項

使用 JGroups 需要引入 JGroups 的 Jar 包以及 EhCache 對 JGroups 的封裝包 ehcache-jgroupsreplication-xxx.jar 。

在一些啟用了 IPv6 的電腦中,經常啟動的時候報如下錯誤信息:

java.lang.RuntimeException: the type of the stack (IPv6) and the user supplied addresses (IPv4) don’t match: /231.12.21.132.

解決的辦法是增加 JVM 參數:-Djava.net.preferIPv4Stack=true。如果是 Tomcat 服務器,可在 catalina.bat 或者 catalina.sh 中增加如下環境變量即可:

  1. SET CATALINA_OPTS=-Djava.net.preferIPv4Stack=true 

經過實際測試發現,集群方式下的緩存數據都可以在 1 秒鐘之內完成到其節點的復制。

EhCache Server

與前面介紹的兩種集群方案不同的是, EhCache Server 是一個獨立的緩存服務器,其內部使用 EhCache 做為緩存系統,可利用前面提到的兩種方式進行內部集群。對外提供編程語言無關的基于 HTTP 的 RESTful 或者是 SOAP 的數據緩存操作接口。

下面是 EhCache Server 提供的對緩存數據進行操作的方法:

OPTIONS /{cache}}

獲取某個緩存的可用操作的信息。

HEAD /{cache}/{element}

獲取緩存中某個元素的 HTTP 頭信息,例如:

  1. curl --head  http://localhost:8080/ehcache/rest/sampleCache2/2 

EhCache Server 返回的信息如下:

  1. HTTP/1.1 200 OK  
  2. X-Powered-By: Servlet/2.5  
  3. Server: GlassFish/v3  
  4. Last-Modified: Sun, 27 Jul 2008 08:08:49 GMT  
  5. ETag: "1217146129490" 
  6. Content-Type: text/plain; charset=iso-8859-1  
  7. Content-Length: 157  
  8. Date: Sun, 27 Jul 2008 08:17:09 GMT 

GET /{cache}/{element}

讀取緩存中某個數據的值。

PUT /{cache}/{element}

寫緩存。

由于這些操作都是基于 HTTP 協議的,因此你可以在任何一種編程語言中使用它,例如 Perl、PHP 和 Ruby 等等。

下圖是 EhCache Server 在應用中的架構:

圖 3. EhCache Server 應用架構圖

圖 3. EhCache Server 應用架構圖

EhCache Server 同時也提供強大的安全機制、監控功能。在數據存儲方面,最大的 Ehcache 單實例在內存中可以緩存 20GB。最大的磁盤可以緩存 100GB。通過將節點整合在一起,這樣緩存數據就可以跨越節點,以此獲得更大的容量。將緩存 20GB 的 50 個節點整合在一起就是 1TB 了。

總結

以上我們介紹了三種 EhCache 的集群方案,除了第三種跨編程語言的方案外,EhCache 的集群對應用程序的代碼編寫都是透明的,程序人員無需考慮緩存數據是如何復制到其它節點上。既保持了代碼的輕量級,同時又支持龐大的數據集群。EhCache 可謂是深入人心。

2009 年年中,Terracotta 宣布收購 EhCache 產品。Terracotta 公司的產品 Terracotta 是一個 JVM 級的開源群集框架,提供 HTTP Session 復制、分布式緩存、POJO 群集、跨越集群的 JVM 來實現分布式應用程序協調。最近 EhCache 主要的改進都集中在跟 Terracotta 框架的集成上,這是一個真正意義上的企業級緩存解決方案。

原文鏈接:http://www.ibm.com/developerworks/cn/java/j-lo-ehcache/

責任編輯:張偉 來源: developerWorks 中國
相關推薦

2014-12-31 09:56:29

Ehcache

2022-03-15 08:22:31

Ehcachespring緩存

2023-02-14 07:47:20

SpringBootEhcache

2023-01-11 15:11:36

SpringEhcache

2021-09-26 05:02:00

緩存Ehcache用法

2009-06-04 20:36:03

CheckStyle的Eclipse中的集成

2010-07-22 15:22:58

BlackBerry開

2011-08-22 15:06:19

linux環境變量

2021-03-29 11:51:07

緩存儲存數據

2019-04-23 08:42:42

EhcacheMemcacheRedis

2012-02-01 15:53:03

JavaEhcache

2009-09-21 17:23:49

Hibernate使用

2025-02-05 12:22:21

2021-02-17 21:04:03

Ehcache緩存Java

2023-11-10 15:16:08

生物識別智能汽車

2017-02-28 10:11:14

Mac OSXPython開發環境

2009-11-06 10:05:18

Linux系統環境GFS

2022-04-30 11:10:40

Nacos集群環境企業

2020-11-24 10:40:12

Ubuntu 20.0LinuxVue

2009-06-29 17:57:30

ApplicationJSP
點贊
收藏

51CTO技術棧公眾號

粉嫩av国产一区二区三区| 国产专区在线| 日韩视频一区| 精品一区二区三区四区| 一区二区三区 日韩| 日本在线看片免费人成视1000| 国产呦萝稀缺另类资源| 国内精品小视频在线观看| 一区二区三区四区免费| 国产精品一区三区在线观看| 亚洲mv大片欧洲mv大片精品| 日韩av电影在线观看| 99热这里只有精品在线观看| 国产日韩一区二区三区在线| 日韩视频免费在线观看| 日本五十肥熟交尾| 色综合久久久| 色综合久久综合| 在线观看17c| 国产二区在线播放| 99久久99精品久久久久久 | 蜜桃麻豆av在线| 国产精品大尺度| 精品国产乱码久久久久久88av| 中文字幕在线播放日韩| 99国产精品久久久久久久| y97精品国产97久久久久久| 白丝女仆被免费网站| 亚洲精品一区国产| 欧美亚洲高清一区二区三区不卡| 最新av网址在线观看| 四虎国产精品永远| 国产在线精品一区二区不卡了 | 成人污网站在线观看| 国产福利电影在线| 久久新电视剧免费观看| 国产伦精品一区二区三区视频黑人| 中文字幕av免费观看| 国产精品入口66mio| 欧美激情精品久久久久久大尺度| 国产又黄又粗又猛又爽的| 亚洲另类av| 亚洲国产精品国自产拍av秋霞| 国产一级免费大片| 粉嫩av一区二区三区四区五区 | 日本999视频| 麻豆蜜桃在线观看| 婷婷一区二区三区| 国产一线二线三线女| 性网站在线观看| 亚洲精品乱码久久久久久| 中文字幕中文字幕99| 91精品大全| 国产精品美女久久久久久久久久久| 欧美日韩亚洲在线 | 丁香一区二区| 亚洲成人激情图| 国产大学生视频| 国产毛片精品| 亚洲精品mp4| 亚洲最大免费视频| 亚洲素人在线| 亚洲天堂av网| 永久免费毛片在线观看| 狠狠做深爱婷婷综合一区| 亚洲欧洲在线播放| 日本乱子伦xxxx| 色综合久久网| 久久久成人精品| 欧美成人aaa片一区国产精品| 91精品国产成人观看| 蜜臀久久99精品久久久久久宅男| 黑鬼狂亚洲人videos| 综合色一区二区| 欧美高清一级大片| 亚洲一区欧美在线| 乱码第一页成人| 国产精品专区一| jizz国产视频| 99久久精品国产一区| 欧美亚洲精品日韩| 日本www在线观看视频| 亚洲欧美一区二区三区久本道91 | 成人xxxxx色| 人妻一区二区三区| 久久亚区不卡日本| 秋霞在线一区二区| 999av小视频在线| 欧美亚洲高清一区| 图片区偷拍区小说区| 欧美人与拘性视交免费看| 日韩网站在线观看| 久久婷婷一区二区| 天堂一区二区在线| 99久久99久久| 国产剧情在线观看| 亚洲主播在线播放| 男女男精品视频站| 97se亚洲国产一区二区三区| 国产香蕉精品视频一区二区三区| 三级影片在线看| 日日夜夜免费精品| 99久久精品无码一区二区毛片| 免费黄色在线视频网站| 亚洲乱码国产乱码精品精98午夜| 免费在线激情视频| 日韩在线观看一区二区三区| 亚洲社区在线观看| 国产一卡二卡在线播放| 六月婷婷色综合| 久久久久成人精品免费播放动漫| 国产盗摄在线观看| 欧美亚洲一区二区在线| 超碰caoprom| 亚洲午夜精品一区 二区 三区| 久久成人免费网站| 欧美精品videos另类日本| 日本三级一区二区三区| 成人精品免费视频| 最新精品视频| jizz久久久久久| 日韩大片在线观看视频| 青青草国产在线观看| 日韩电影在线一区二区| 九9re精品视频在线观看re6| 在线播放免费av| 欧美久久久久久蜜桃| 男女做爰猛烈刺激| 在线亚洲伦理| 韩国成人av| 欧美家庭影院| 91精品国产91久久综合桃花| 日本精品久久久久中文| 久久国产成人| 精品卡一卡二| 丰满的护士2在线观看高清| 日韩一级精品视频在线观看| 日本美女黄色一级片| 蜜桃av一区二区三区电影| 欧美精品亚洲精品| 中文av在线全新| 亚洲精品久久久久| 亚洲欧美在线视频免费| 成人精品视频一区| 欧美深夜福利视频| 欧美日韩一区二区三区不卡视频| 国产69精品久久久久9| 精品毛片在线观看| 亚洲激情自拍视频| 毛毛毛毛毛毛毛片123| 亚洲成av人片乱码色午夜| 亚洲一区亚洲二区| 日韩激情av| 精品福利一二区| 日韩av女优在线观看| 99久久精品费精品国产一区二区| 国产精品专区在线| 欧美日韩导航| 国产成人精品视频在线观看| 男女视频在线观看| 欧美在线免费观看亚洲| 午夜黄色福利视频| 国产美女一区二区| av动漫在线免费观看| 澳门精品久久国产| 欧美性资源免费| 岛国视频免费在线观看| 在线播放国产精品二区一二区四区| 二区三区四区视频| 丰满岳乱妇一区二区三区| 亚洲 欧美 日韩 国产综合 在线| 网曝91综合精品门事件在线| 国产mv久久久| 麻豆视频网站在线观看| 日韩欧美在线一区二区三区| 国产黄色片视频| 国产日韩欧美麻豆| 成人亚洲免费视频| 欧美一区二区三区久久精品| 精品国产一区二区三区免费| 欧洲av一区二区| 久热精品视频在线观看| 午夜视频www| 欧美伊人久久大香线蕉综合69 | 最新日韩av在线| zjzjzjzjzj亚洲女人| 亚洲永久字幕| 中文字幕一区二区三区四区五区| 免费精品一区| 日韩av电影在线网| 超碰在线caoporn| 亚洲精品ady| 91国内精品视频| 婷婷一区二区三区| 黄色一级大片在线免费观看| 99久久国产综合精品色伊| 亚洲一级片网站| 一区二区三区国产盗摄| 亚洲一二三区精品| 牛牛影视久久网| 国产中文欧美精品| 欧美7777| 国内精品久久久久久久久| 91精品国产91久久久久游泳池 | 水蜜桃av无码| 久久国产剧场电影| 久久综合九色综合88i| 久久亚洲成人| 久久久久高清| 成人三级毛片| 91精品视频一区| 国模一区二区| 国产91精品久久久久久| 毛片在线导航| 超在线视频97| 亚洲乱亚洲乱妇| 亚洲视频视频在线| 色窝窝无码一区二区三区| 91麻豆精品国产自产在线观看一区 | 一本到一区二区三区| 久久久久久国产精品视频| 欧美国产日韩精品免费观看| 在线免费观看a级片| 国产成人高清视频| www.亚洲自拍| 久久av资源网| 欧美wwwwwww| 美女脱光内衣内裤视频久久影院| 成年人观看网站| 99精品欧美| 欧美亚洲黄色片| 女主播福利一区| 性做爰过程免费播放| 色呦哟—国产精品| 亚洲国产一区二区精品视频| 久久99精品久久久久久园产越南| 精品免费国产| 久久精品色综合| 国产日韩久久| 麻豆视频一区| 精品乱码一区二区三区| 免费观看成人www动漫视频| 国产精品日韩一区二区| 91精品入口| 成人免费视频网站| 国偷自产视频一区二区久| 国产精品一区二区三区不卡| 北条麻妃一区二区三区在线| 国产亚洲自拍偷拍| 美女视频亚洲色图| 精品一区在线播放| 宅男在线一区| 日韩精品电影网站| 第一会所sis001亚洲| 中文字幕久精品免| 永久91嫩草亚洲精品人人| 免费的av在线| 影音国产精品| 蜜臀久久99精品久久久酒店新书| 日韩国产欧美在线观看| 中文字幕av专区| 国产一区中文字幕| 波多野结衣影院| 久久久久久久综合| 中文字幕91视频| 亚洲精品v日韩精品| 日韩欧美三级在线观看| 色香色香欲天天天影视综合网| 69视频免费看| 欧美精品精品一区| 高潮一区二区三区乱码| 国产视频在线观看一区二区| √新版天堂资源在线资源| 久热精品在线视频| 加勒比婷婷色综合久久| 国产精品色噜噜| 污污的视频在线免费观看| 一区二区视频免费在线观看| 福利一区二区三区四区| 色哟哟日韩精品| 国产视频一二三四区| 亚洲福利在线看| 粉嫩一区二区三区国产精品| 久久av.com| 亚洲女同av| 成人综合国产精品| 日本亚洲不卡| 偷拍盗摄高潮叫床对白清晰| 伊人成人网在线看| 最新中文字幕2018| 成人性生交大片免费看视频在线| 日本黄色特级片| ...xxx性欧美| 三级网站在线播放| 日韩欧美激情在线| 成人欧美亚洲| 97在线看免费观看视频在线观看| 成人免费毛片嘿嘿连载视频…| 99久久精品免费看国产四区 | 国产亚洲欧美在线精品| 制服.丝袜.亚洲.中文.综合| 涩涩视频在线观看免费| 久久av在线播放| 另类专区亚洲| 成人午夜电影在线播放| 久久综合99| 2022亚洲天堂| 成人免费视频一区| 最新黄色av网址| 色偷偷久久人人79超碰人人澡 | 亚洲国产天堂网精品网站| 日本三级在线播放完整版| 91成人福利在线| 日韩欧美久久| 这里只有精品66| 日日夜夜精品免费视频| 欧美做受高潮中文字幕| 成人免费在线视频观看| 波多野结衣在线电影| 日韩高清免费观看| 欧美黑人xx片| 亚洲一区精品电影| 99热国内精品| 天美星空大象mv在线观看视频| 91在线观看污| 久草视频精品在线| 精品毛片乱码1区2区3区| 黄色在线论坛| 国产日韩在线视频| 精品国产91乱码一区二区三区四区 | 一区二区91| 中国xxxx性xxxx产国| 一区二区视频在线| 亚洲第一成人av| 欧美精品日韩www.p站| **国产精品| 亚洲精品偷拍视频| 国产在线视视频有精品| 永久免费看片视频教学| 欧美吻胸吃奶大尺度电影| 国产黄在线观看免费观看不卡| 欧美伊久线香蕉线新在线| 亚洲国产合集| 天天摸天天碰天天添| 久久免费偷拍视频| 久久国产乱子伦精品| 亚洲欧美日韩在线一区| 一呦二呦三呦精品国产| 日韩精品一区二区三区外面 | 国产欧美久久久久久| 欧美色图一区| 中日韩av在线播放| 亚洲欧美视频在线观看| 国产成人毛毛毛片| 久久99国产精品自在自在app| 亚洲一区二区三区中文字幕在线观看| 女同性恋一区二区| 国产不卡高清在线观看视频| 日本熟女一区二区| 国产婷婷97碰碰久久人人蜜臀 | 91福利在线播放| av福利精品| 91欧美日韩一区| 狠狠入ady亚洲精品| 在线黄色免费网站| 色女孩综合影院| 欧美r级在线| 电影午夜精品一区二区三区| 99国产精品视频免费观看一公开| 亚洲av无码一区二区二三区| 在线观看欧美日本| 黄网页在线观看| 国产在线资源一区| 视频在线在亚洲| 欧美性生给视频| 精品久久久久久久一区二区蜜臀| 中国色在线日|韩| 伊人久久大香线蕉精品| 成人午夜视频网站| 波多野结衣日韩| 欧美日韩国产91| 蜜桃a∨噜噜一区二区三区| 中文字幕第38页| 亚洲h精品动漫在线观看| wwwww在线观看免费视频| 97中文在线观看| 嫩草成人www欧美| 91麻豆免费视频网站| 日韩av网站在线| www.成人| 成人性视频欧美一区二区三区| 亚洲免费观看高清| 免费在线观看污视频| 91日韩在线播放| 日韩主播视频在线| 激情综合五月网| 日韩中文字幕亚洲| 日韩极品少妇| 国产成人av片| 欧美日韩一级片在线观看|