《電子技術應用》
您所在的位置:首頁 > 其他 > 業(yè)界動態(tài) > Apusic應用服務器技術概覽

Apusic應用服務器技術概覽

2008-12-02
作者:袁紅崗

??? 在Java規(guī)范的三個版本中,J2EE(Java 2 Enterprise Edition)是面向企業(yè)應用定義了一系列分布式服務的規(guī)范,Apusic應用服務器" title="應用服務器">應用服務器是國內第一個自有知識產權嚴格遵循J2EE規(guī)范的應用服務器產品,同時還為企業(yè)應用提供了很多功能拓展。Apusic應用服務器的體系結構為:



??????????????????????????????????????? 圖一: Apusic應用服務器的體系結構
Apusic應用服務器提供了下列服務和功能:
.EJB容器(無狀態(tài)Session Bean、有狀態(tài)Session Bean、Entity Beans、Message-Driven Beans);
.?Web容器;
.分布式事務服務;
.安全服務;
.?基于JMX的管理服務;
.?JMS;
.?Web Services;
.?JDBC服務;
.?Java Mail服務等。
在此,就以下幾個方面分析Apusic應用服務器提供的服務和功能:
表現層
業(yè)務邏輯層
數據層
安全服務
事務服務
名字服務
Web Services
與CORBA的互操作
一.?表示層
多層應用模型中的表示層主要被用于與瀏覽器、桌面應用、無線設備及其他客戶端" title="客戶端">客戶端的交互,Apusic應用服務器支持所有的客戶機/服務器的交互機制。
J2EE?規(guī)范中包含了JSP和Servlet規(guī)范,JSP和Servlet定義了J2EE企業(yè)應用中的表示層的編程模型。通過使用JSP和Servlet,實現Web內容的動態(tài)生成。Apusic應用服務器完全支持JSP、Servlet規(guī)范,提供了對于諸如Filter等最新特性的支持
對于通過瀏覽器進行的HTTP請求,Apusic應用服務器提供了一個高效可靠的Web服務器。通過使用Servlet和JSP實例池、結果緩存、JSP編譯調試工具等工具和技術,對部署于服務器上的JSP和Servlet,Apusic應用服務器服提供了一個高效可靠的運行時環(huán)境和開發(fā)、部署和維護的高效易用的平臺。
除了對J2EE相關JSP和Servlet規(guī)范的實現,Apusic應用服務器中的Web容器和相關工具還提供了一些特有的特性,通過這些特有的特性,使得面向Apusic應用服務器的表示層的開發(fā)、部署、運行和維護變得更加方便和高效。
·? 虛擬主機
可以在單個的Apusic應用服務器上配置多個Web站點。通過域名與應用服務器的路徑映射實現此功能,只需指定域名即可實現對站點的訪問。
·? 多路復用
Apusic 應用服務器采用了多路復用(multiplexing)通訊技術。在一個TCP/IP 連接上建立多個雙向的虛擬連接,每個虛擬連接可以進行完全獨立的通訊功能。通訊雙方可以根據需要打開或關閉虛擬連接,進行通訊,實現了將多個服務統(tǒng)一到一個端口上,降低服務器的管理成本。
·? 使用第三方Web服務器
除了Apusic應用服務器內置的Web服務器外 ,Apusic應用服務器可以與其他現有的Web服務器進行整合,如Apache、Microsoft IIS等,通過使用Apusic應用服務器提供的負載均衡功能,為企業(yè)應用提供一個更高可用性和伸縮性的平臺。
·? 負載均衡與失效恢復
Apusic應用服務器提供了基于Web層的負載均衡的功能。當使用Apusic作為集群中的負載均衡器時,服務器提供了獨有的負載均衡和失效恢復的特性。

·? JSPC工具
為提高表示層JSP的開發(fā)調試的效率,Apusic提供了一個簡單易用的JSP命令行編譯工具JSPC,通過此工具,開發(fā)者可以對JSP進行更為高效的開發(fā)和調試,通過設置相關調試工具,可以實現對JSP的源碼級調試。


二.業(yè)務邏輯層
多層應用模型中的業(yè)務邏輯層被用于封裝應用業(yè)務邏輯,包括獨立于應用界面的業(yè)務組件,通過應用服務器中的組件容器提供運行時環(huán)境。 Enterprise JavaBeans?(以下稱EJB)是J2EE?應用中的業(yè)務邏輯層的組件模型。Apusic應用服務器提供了對EJB2.0規(guī)范的完全實現,同時提供了相關的特有特性,以簡化對J2EE應用邏輯層的開發(fā)、部署、管理和維護。
Apusic應用服務器中的EJB容器提供對EJB的生存周期管理、緩存、持久性和事務管理等服務,Apusic提供三種類型的EJB的支持:Session Bean、Entity Bean和Message-driven Bean。 同時提供了相關的一些特性,如CMR、EJB QL等,為提高應用執(zhí)行的效率,還提供了新的Local接口。
1.Entity Bean
Entity Bean被用于表示應用中的業(yè)務實體,通常與數據庫或傳統(tǒng)應用中的業(yè)務數據實體保持映射關系,可以理解為數據庫或傳統(tǒng)應用中的業(yè)務數據實體在內存中的對象表示方式。
Apusic應用服務器支持新的容器管理關系模型(CMR)和Entity Bean的查詢語言EJB QL。
(1) 容器管理持久性(Container Managed Persistence)指由EJB容器處理Entity Bean需要的對數據庫的訪問。使Entity Bean可以脫離特定類型的數據庫,從而具有更高的靈活性。
(2) 容器管理關系(Container Managed Relation)
容器管理關系用于對實體數據對象之間關系的管理。
容器管理持久性的Entity Bean有以下四種容器管理關系:
·? one-to-one,一個Bean的單個實例關聯(lián)另一個Bean的單個實例;
·? one-to-many,一個Bean的單個實例關聯(lián)另一個Bean的多個實例;
·? many-to-one,一個Bean的多個實例關聯(lián)另一個Bean的單個實例;
·? many-to-many,一個Bean的多個實例關聯(lián)另一個Bean的多個實例;
容器管理關系的方向可以是雙向或單向。在一個雙向的關系中,涉及的Bean都有一個關系域與另外的Bean關聯(lián),通過關系域,可以從一個Bean的實例中訪問關聯(lián)的Bean對象,反之亦可。在一個單向的關系中,只有一個Bean擁有關聯(lián)其他Bean的關系域,只能從這個Bean的實例訪問被關聯(lián)的Bean對象,而不可從被關聯(lián)的Bean對象訪問到這個實例。
(3)EJBQL
對于容器管理持久性的Entity Bean,需要在部署描述中定義抽象模式的名字。這些名字將可以通過使用Enterprise JavaBeas? Query Language(EJB? QL)編寫的查詢語句進行引用。例如,必須為每一個finder方法定義一個EJB QL查詢語句,通過此語句定義當此finder方法被調用時,容器執(zhí)行的查詢。
另外在Apusic的自有特性中提供了對從EJBQL中查詢出的對象進行排序的功能,即擴展的了EJBQL的語句提供了Order By語句可以進行排序。

2.Session Bean
Session Bean通常被用于實現業(yè)務過程邏輯,通過對Entity Bean的操作完成業(yè)務過程并封裝過程邏輯。 盡管在需要的情況下,Session Bean可以有保持數據到持久存儲機制的能力,如數據庫,但Session Beans不是持久的。
相對于表示業(yè)務實體的Entity Bean,Session Bean的生存時間要短,大致等于于一個客戶端會話的延續(xù)時間。例如,客戶通過瀏覽器,訪問與Session Bean表示的相關業(yè)務過程,或通過一個Java應用程序" title="應用程序">應用程序或者是Applet訪問的相關業(yè)務過程的持續(xù)時間,或其它Enterprise Bean訪問此業(yè)務過程的持續(xù)時間。
Session Bean是非持久的,其狀態(tài)不被保存到持久存儲機制(如數據庫、文件系統(tǒng))中,盡管Session Bean本身可以執(zhí)行對數據庫的操作,但它并不是一種持久對象的表示。
Session Bean表示客戶端與應用之間的會話。會話由客戶端與組件之間的交互組成,一般表現為一系列的方法調用" title="方法調用">方法調用。
根據Session Bean保持會話狀態(tài)的方式,可分為狀態(tài)的和無狀態(tài)的Session Bean。

(1)無狀態(tài)(Stateless)的Session Bean,會話狀態(tài)只會在單個方法調用中被保持,一旦方法調用結束,組件將丟棄方法調用過程中保持的狀態(tài),不保持跨越方法調用的會話狀態(tài)。
(2)對于有狀態(tài)(Stateful)的Session Bean,在整個會話期間,特定組件實例將保持與某個特定客戶端之間跨越方法調用的會話狀態(tài)。

3.Message-driven Bean
Message-driven Bean 是EJB2.0規(guī)范中新增的一個enterprise bean 類型,通常被用于異步接收從客戶端發(fā)送的消息,觸發(fā)相應的業(yè)務處理過程。
Message-Driven Bean 作為EJB2.0規(guī)范中新增的一個enterprise bean 類型,除得到應用服務器管理的事務,安全和資源訪問的服務之外,同時作為 JMS消息系統(tǒng)中的消息使用者 (Message Consumer)接收并處理應用消息。
通過消息機制而非直接的方法調用,客戶端可以繼續(xù)執(zhí)行而不必等待服務器的運行結果,服務器可以選擇在方法調用完成后通知客戶,而消息機制本身保證了信息傳輸的可靠性, 同時使用消息域(Message Domain)中的消息類型模型以達到事件廣播的機制。
(1) Message-driven Bean 作為一般的JMS 使用者(consumer)
作為一種具有JMS使用者(consumer)功能的Enterprise Bean組件模型,Message-Driven Bean由EJB容器進行管理,具有一般的JMS使用者(consumer)所不具有的優(yōu)點,如對于一個Message-driven Bean,容器可創(chuàng)建多個實例來處理大量的并發(fā)消息,而一般的JMS使用者 (consumer)開發(fā)時則必須對此進行處理才能獲得類似的功能。同時Message-Driven Bean可取得EJB所能獲得的標準服務,如容器管理事務等服務。
(2) Message-driven Bean 與其他Enterprise Bean
作為Enterprise Bean組件模型之一,Message-driven Bean,具有一些與Session Bean 和Entity Bean相同的方法,但由于Message-driven Bean本身不處理客戶端調用,也無會話狀態(tài),客戶只能通過向與Message Driven Bean關聯(lián)的隊列或主題發(fā)送消息從而與Message-driven Bean 進行交互,因此,Message-driven Bean 與Session Bean 和Entity Bean之間最大的不同之處在于Message-Driven Bean不具有組件接口及Home接口。
另外,Message-driven Bean異步地處理隊列(Queue)或主題(Topic)中的消息,而非方法調用。

4.Apusic專有特性
除了對EJB2.0規(guī)范的實現,Apusic應用服務器中的EJB容器和相關系統(tǒng)服務還提供了一些高端增值特性,通過這些增值特性,使得面向Apusic應用服務器的業(yè)務邏輯層的開發(fā)、部署、運行和維護變得更加方便、高效和可靠。
(1)實例池
通過圖形化的配置工具或簡單修改組件配置文件,Apusic應用服務器可以預先裝載指定數量的對象實例到實例池中,使對客戶請求進行響應的過程更加高效。
(2)CMP Entity Bean自動升遷
對于一個按照EJB1.1規(guī)范編寫的CMP Entity Bean,應用服務器在運行時將其自動升級到EJB2.0,使按照EJB1.1規(guī)范編寫的EJB可以使用EJB2.0規(guī)范中提供的Lazy Loading和Smart Update技術以提高應用執(zhí)行的效率,同時降低已有應用在維護上的成本。
(3)熱部署
為提高企業(yè)應用開發(fā)、調試和維護的效率,Apusic應用服務器提供了熱部署的功能。在運行時,可以動態(tài)地部署和修改應用中的應用程序,無需停止和重新啟動服務器即可應用新的改動。
(4)自動遷移及部署
不同的應用服務器廠商提供的基于J2EE?規(guī)范實現的應用服務器的不同,使得多數企業(yè)應用在不同的服務器之間遷移時,需要改動一些配置,提高了應用移植的成本,Apusic應用服務器提供了自動遷移和部署的能力,對于面向其他非Apusic應用服務器開發(fā)的企業(yè)應用,可以不改動應用程序,而由應用服務器自動完成移植的工作并部署到應用服務器,大大降低了應用移植的成本。
目前對于面向Weblogic8.1和J2EE?RI開發(fā)的企業(yè)應用,可以直接使用這項功能,Apusic應用服務器還將在此項功能上添加對當前其他主流應用服務器的支持。
(5)自動生成查詢
為提高面向CMP Entity Bean的開發(fā)效率和降低開發(fā)的難度,Apusic應用服務器可為CMP Entity Bean自動生成缺省的finder query。

三. 數據層
Apusic應用服務器模型中的數據層提供企業(yè)應用對關系型數據庫和傳統(tǒng)企業(yè)應用數據的高效而可靠的訪問。使得企業(yè)應用可以通過JDBC實現對關系型數據庫安全、可靠而且高效的訪問。目前Apusic應用服務器提供了對最新的JDBC3.0版本的支持。任意合法的J2EE?編程模型都可以從Apusic應用服務器數據庫連接池中獲得對關系型數據庫的連接。
按照J2EE?的規(guī)范,Entity Bean被設計為與數據庫直接交互的最佳模型,但在實際的企業(yè)運用開發(fā)中,任何一種編程模型都有可能直接與數據庫進行交互,針對這種情形,Apusic應用服務器提供了很多功能或特性,使對數據層訪問的開發(fā)更為簡單同時達到更為高效而安全的目標。
·? JDBC結果集緩存
對于Session Bean、JSP、Servlets為主的J2EE應用中,頻繁訪問數據庫而缺少對應的數據緩存等機制,往往會成為企業(yè)應用的瓶頸。因此,Apusic應用服務器提供了JDBC結果集緩存技術,通過將數據庫返回的結果集保存在內存中可以大幅提高應用系統(tǒng)的性能,同時,使用結果集緩存對應用開發(fā)者是完全透明的,保證了應用的可移植特性。
·? JDBC語句緩存
對于Session Bean、JSP、Servlets為主的J2EE應用中,頻繁訪問數據庫而缺少對應的數據緩存等機制,往往會成為企業(yè)應用的瓶頸。因此,Apusic應用服務器提供了JDBC語句緩存技術,同時使用預編譯的查詢語句,提高應用程序訪問數據庫的效率。
·? 連接池
對于復雜的企業(yè)應用而言,對數據庫連接池的可靠、效率,成本都有著極高的要求,Apusic應用服務器提供了對連接資源的優(yōu)化,使有限的數據庫連接資源得到最大程度的利用,同時,對于應用錯誤使用連接造成的死鎖" title="死鎖">死鎖或阻塞,提供了死鎖檢測的技術,而以上的特性對于用戶而言是完全透明的。


四.安全服務
對于企業(yè)應用而言,應用服務器所能提供的安全方面的功能是保證企業(yè)應用數據完整、邏輯完整和減少被入侵可能的 重要特性,針對多層的分布式企業(yè)應用的安全要求,Apusic應用服務器提供了可靠高效的安全構架。同時,為應用程序的加密需求提供了一個安全、強壯、高效的JCE(Java Cryptography Extension)提供者。


?
?????????????????????????????????????? 圖二 Apusic服務器數據安全功能的架構
·? 身份鑒定
Apusic應用服務器提供了面向用戶、調用過程和客戶端調用等方式的身份鑒定,通過使用用戶名和密碼、證書等等方式,將合法的應用用戶和調用程序區(qū)別于非法的入侵者。
·? 授權
授權是使企業(yè)應用的完整性和安全性得以保證的重要因素,Apusic應用服務器對企業(yè)應用的授權策略提供了易于配置和修改的方法與工具,同時提供了可靠安全的授權機制。
·? 加密
對于企業(yè)應用中的敏感數據的保存和交換,Apusic提供了高效可靠的加密機制。
Apusic 安全服務提供了數字簽名、消息摘要、消息鑒別碼、RSA 非對稱加密、序列密碼加密、分組密鑰密碼加密、密鑰生成、密鑰交換等常用的算法。
·? 安全數據存儲
對于系統(tǒng)中的關鍵數據,如消息、用戶信息等等,Apusic提供了極安全的內部保護存儲機制。
Apusic 應用服務器的加密算法完全是自主實現的,一舉打破國際對中國加密算法位數的限制。國內企業(yè),政府部門等使用Apusic 應用服務器會更加安全可靠。
Apusic應用服務器同時提供了對JSSE的實現。


五.事務服務
J2EE中對于事務的處理是分布式的,Apusic完全提供對XA事務的支持,顯示對大型企業(yè)應用的支持。
為了簡化開發(fā)者對事務的處理,Apusic應用服務器在EJB容器中提供容器管理事務(Container Managed Transaction),應用開發(fā)者使用EJB管理數據即自動獲得了事務的保證,由于EJB容器對數據庫的管理是分布式的開發(fā)者又由此自動獲得了對應用開發(fā)較為困難的分布事務管理能力,這一切都由應用服務器完成。
為保證應用數據和業(yè)務邏輯的的完整性,除了提供完全符合規(guī)范和強壯的事務管理器之外,Apusic應用服務器對Entity Bean中特別是CMP類型的組件,提供了強壯而靈活的事務構架。
·? 死鎖檢測
能夠根據資源等待圖自動檢測出死鎖狀態(tài),當事務發(fā)生死鎖時將其中一個事務回滾,以釋放事務所占用的資源,使其他事務能夠繼續(xù)執(zhí)行。
·? 并發(fā)控制
提供了靈活和強壯的EJB并發(fā)控制機制,單獨分離出了并發(fā)控制部分,可以使用插件的形式同時提供多種并發(fā)控制協(xié)議。
·? JMS全局事務
提供了一個作為事務性資源管理器的JMS 提供者(Provider),允許從JSP,Servlet, EJB 等應用組件中對JMS 進行事務性的訪問。同時,從一個單一事務邊界中允許多個應用組件訪問JMS 提供者。

六.名字服務
由于J2EE應用的關鍵特性是分布式的,其提供的服務可能分布在任何一個機器或網絡,應用的開發(fā)統(tǒng)一通過JNDI(Java Naming and Directory Interface)來獲得服務,開發(fā)者在開發(fā)時可以不用關心服務的物理所在。
Apusic完全支持使用JNDI,并且開發(fā)完成后,部署者(Deployer)可以在部署工具中配置應用所需要的環(huán)境、資源、服務,使應用獲得所需的分布式服務,完成最終生產環(huán)境的建立。

七.Web Services
Apusic應用服務器實現了對Web Services的支持。Apusic Web Services 是一個開放的遵循業(yè)界標準的Web Services實現,主要實現了以下 的Web Services相關規(guī)范:
.?JAX-RPC1.0
.?JAXM1.1
.?SAAJ1.1
.?JAXR1.0
.?SOAP1.1
.?SOAP with Attachments
.?WSDL1.1
.?UDDI2.0
Apusic Web Services支持和其他Web Services產品的交互,包括Weblogic和.Net。
八.與CORBA的互操作
CORBA(Common Object Request Broker Architecture, 公共對象請求代理體系結構)是由OMG(對象管理組織,Object Management Group)提出的應用軟件體系結構和對象技術規(guī)范,被廣泛的用來開發(fā)分布式系統(tǒng)。Apusic應用服務器完整的實現了CORBA-EJB映射規(guī)范,因此可以和CORBA對象進行互相調用。CORBA和EJB的互操作規(guī)范包含以下四個方面:
.?EJB接口到CORBA接口的映射;
.?JNDI名字到CORBA名稱服務(CosNaming )的映射;
.?EJB和CORBA之間的事務傳播;
.?EJB和CORBA之間的安全傳播。
Apusic應用服務器實現了RMI-IIOP(Internet Inter-ORB Protocol)協(xié)議,能夠在多個Apusic服務器實例之間傳播事務、安全等上下文信息(Context)。

經過上面的初步分析可以看出,Apusic應用服務器是一個完全基于J2EE?1.3規(guī)范的應用服務器產品,為分布式企業(yè)應用提供了安全、可靠、高效的開發(fā)、部署、維護的平臺。特別適合為電子商務、電子政務和行業(yè)應用的開發(fā)提供基礎平臺。

本站內容除特別聲明的原創(chuàng)文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯(lián)系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美激情bt| 国产一区美女| 久久综合色一综合色88| 午夜久久一区| 亚洲一区二区在线免费观看视频| 亚洲日本理论电影| 亚洲高清网站| 久久精品毛片| 亚洲电影免费在线| 久久精品国产亚洲aⅴ| 欧美一区二区在线播放| 亚洲欧美日韩久久精品| 亚洲女女女同性video| 中国女人久久久| 艳妇臀荡乳欲伦亚洲一区| 亚洲精品一区在线观看| 亚洲区欧美区| 亚洲六月丁香色婷婷综合久久| 亚洲日本aⅴ片在线观看香蕉| 亚洲国产日韩在线| 亚洲黑丝在线| 亚洲美女区一区| 99日韩精品| 亚洲一区二区三区乱码aⅴ| 夜夜爽夜夜爽精品视频| 在线视频你懂得一区| 一本色道婷婷久久欧美| 亚洲少妇中出一区| 亚洲综合大片69999| 性欧美长视频| 久久精品视频免费播放| 最新国产成人在线观看| 亚洲三级性片| 亚洲午夜日本在线观看| 亚洲一二三区在线| 欧美一区二区精品| 久久免费视频网站| 欧美国产一区二区| 欧美色视频日本高清在线观看| 国产精品v日韩精品v欧美精品网站| 国产精品麻豆va在线播放| 国产日韩在线视频| 1024亚洲| 99在线视频精品| 亚洲欧美日韩人成在线播放| 久久av免费一区| 亚洲精品一区中文| 午夜激情久久久| 久久色中文字幕| 欧美久久久久中文字幕| 国产精品福利在线| 国内外成人免费视频| 亚洲日本理论电影| 亚洲一区3d动漫同人无遮挡| 久久国内精品视频| 亚洲最新视频在线| 欧美专区日韩专区| 欧美精品97| 国产精品日韩欧美一区| 一区二区在线视频播放| 一区二区三区导航| 久久国产色av| 亚洲免费观看高清在线观看| 亚洲欧美综合国产精品一区| 久久影音先锋| 欧美午夜不卡| 亚洲高清久久久| 亚洲一区二区三区视频播放| 亚洲国产成人午夜在线一区| 亚洲一区二区成人| 久久免费99精品久久久久久| 欧美日韩亚洲一区二区三区在线| 国产一区二区三区久久| 亚洲另类自拍| 亚洲大胆女人| 亚洲欧美日韩另类精品一区二区三区| 美女精品在线观看| 国产精品男人爽免费视频1| 在线观看一区欧美| 亚洲一区二区毛片| 亚洲精品一区久久久久久| 久久精品国产v日韩v亚洲| 欧美日韩亚洲综合一区| 激情综合色丁香一区二区| 亚洲午夜女主播在线直播| 亚洲毛片在线观看.| 久久久国产成人精品| 国产精品v欧美精品∨日韩| 亚洲国产精品一区二区三区 | 一区二区激情视频| 91久久精品国产| 久久久精品2019中文字幕神马| 欧美午夜性色大片在线观看| 亚洲国内自拍| 亚洲动漫精品| 久久国产视频网| 国产精品免费一区豆花| 9国产精品视频| 亚洲精品资源美女情侣酒店| 久久综合激情| 国产亚洲免费的视频看| 亚洲欧美激情精品一区二区| 亚洲在线免费观看| 欧美日韩国产综合视频在线| 激情国产一区| 欧美一区二区三区男人的天堂| 亚洲欧美日韩在线不卡| 欧美视频一区在线| 亚洲麻豆av| 这里只有精品在线播放| 欧美精品aa| 亚洲日本va在线观看| 亚洲精选久久| 欧美韩日高清| 亚洲第一伊人| 亚洲欧洲精品一区二区三区波多野1战4 | 欧美专区一区二区三区| 国产精品久久久久天堂| 99国产精品国产精品毛片| 一本一本大道香蕉久在线精品| 欧美激情按摩| 亚洲第一综合天堂另类专| 亚洲国产欧美在线人成| 美女任你摸久久| 亚洲电影毛片| 亚洲精品在线电影| 欧美激情小视频| 亚洲精品日韩在线观看| 中文日韩在线视频| 欧美视频手机在线| 亚洲在线观看视频网站| 性欧美8khd高清极品| 国产精品在线看| 欧美亚洲一级| 久久久久青草大香线综合精品| 国产综合自拍| 91久久精品美女| 欧美激情一区二区三区高清视频| 亚洲精品视频免费观看| 亚洲视频日本| 国产精品欧美精品| 亚洲欧美日本另类| 久久免费视频一区| 亚洲福利av| 在线亚洲欧美视频| 国产精品videosex极品| 午夜久久久久久久久久一区二区| 久久国产主播| 揄拍成人国产精品视频| 99热精品在线观看| 欧美性生交xxxxx久久久| 亚洲欧美综合精品久久成人| 老司机一区二区三区| 亚洲乱码视频| 性欧美在线看片a免费观看| 国产一区二区精品| 亚洲伦理在线免费看| 欧美日韩精品一区二区天天拍小说 | 亚洲国产经典视频| 亚洲婷婷综合色高清在线| 国产精品区免费视频| 欧美在线观看天堂一区二区三区| 老司机67194精品线观看| 日韩午夜激情av| 久久gogo国模裸体人体| 禁久久精品乱码| 亚洲午夜久久久久久久久电影院 | 欧美成人r级一区二区三区| 亚洲理伦在线| 欧美制服丝袜第一页| 在线观看亚洲| 亚洲欧美日韩国产一区二区| 国产综合香蕉五月婷在线| 艳妇臀荡乳欲伦亚洲一区| 国产女人18毛片水18精品| 亚洲国产老妈| 国产精品激情| 亚洲国产视频直播| 国产精品劲爆视频| 亚洲国产岛国毛片在线| 欧美午夜视频在线观看| 久久国产高清| 国产精品爱久久久久久久| 亚洲福利专区| 国产精品久久久久久av下载红粉| 久久精品日产第一区二区三区| 欧美视频中文字幕在线| 亚洲国产1区| 欧美日韩一二三四五区| 亚洲国产清纯| 国产欧美亚洲日本| 在线亚洲伦理| 1000精品久久久久久久久| 欧美一区二区高清在线观看| 亚洲精品在线观| 久久综合久久久| 午夜视频在线观看一区| 欧美日韩另类视频| 亚洲国产婷婷香蕉久久久久久99| 国产精品人人做人人爽|