日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

当微服务撞上区块链

發(fā)布時間:2025/3/21 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 当微服务撞上区块链 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.


當微服務(wù)撞上區(qū)塊鏈

區(qū)塊鏈?微服務(wù)?普元 閱讀1516?

作者:普元CTO 焦烈焱?
更多區(qū)塊鏈文章投稿,請郵箱至jingqi@csdn.net?
中國云計算技術(shù)大會http://cctc.csdn.net,在5月19日背景,將舉辦全天的區(qū)塊鏈技術(shù)峰會專場,歡迎大家與區(qū)塊鏈專家一起探討區(qū)塊鏈的技術(shù)趨勢?,F(xiàn)在購票還有折扣。

導語

每一種新技術(shù)的產(chǎn)生與發(fā)展,都會與既有的技術(shù)與實踐存在著聯(lián)系,例如微服務(wù)作為一種技術(shù)架構(gòu),實際上是在SOA架構(gòu)和JavaEE等分布式架構(gòu)的基礎(chǔ)上,進一步明晰了服務(wù)實現(xiàn)的方式與規(guī)則。區(qū)塊鏈技術(shù)脫胎于比特幣,作為一種多方信任的交易和技術(shù)模型,被包括國家、政府、監(jiān)管機構(gòu)等諸多業(yè)務(wù)方所關(guān)注,反而是技術(shù)從業(yè)者有些茫然,這一技術(shù)到底是什么,解決什么問題,能夠用在哪里普元近年來持續(xù)對微服務(wù)和區(qū)塊鏈技術(shù)進行了研究,這里和大家分享一下研究的成果。我們的研究重點放在了如下幾個方面:

1. 區(qū)塊鏈技術(shù)適用的應(yīng)用場景有哪些,該技術(shù)帶來的價值是什么??
2. 區(qū)塊鏈技術(shù)是由哪些技術(shù)組合而成,和現(xiàn)有技術(shù)的關(guān)系如何??
3. 采用區(qū)塊鏈技術(shù)后,應(yīng)用技術(shù)架構(gòu)是什么,與微服務(wù)架構(gòu)的關(guān)系,現(xiàn)有應(yīng)用如何進行遷移?

區(qū)塊鏈的業(yè)務(wù)價值是通過數(shù)據(jù)共享降低信任成本

區(qū)塊鏈技術(shù)是從比特幣開始的,2008年由中本聰提出開始,造成了一個比特幣的熱潮。但是,比特幣的熱潮退去后,比特幣提出的問題和解決方式卻吸引著我們。2014年左右區(qū)塊鏈逐步從比特幣中脫離出來,做為一種獨立的技術(shù)發(fā)展,進入了 2.0 時代,以數(shù)字資產(chǎn)的方式解決商業(yè)的信任問題,同時用數(shù)字化手段提高業(yè)務(wù)的效率,在很多業(yè)務(wù)中已經(jīng)有了嘗試。

做為一種獨立的技術(shù)發(fā)展,區(qū)塊鏈分為公有鏈、聯(lián)盟鏈、私有鏈三個方向。而從業(yè)務(wù)角度看,區(qū)塊鏈的核心價值在于通過數(shù)據(jù)共享建立了多方的信任機制。

多參與方業(yè)務(wù)產(chǎn)生的信任問題是采用區(qū)塊鏈技術(shù)的源動力

信任問題,始終是一個大問題,為了解決信任問題,人類投入了大量的時間和金錢。尤其是多個參與方參加的業(yè)務(wù),信任的成本更高,這里我舉一個復雜的例子:信用證業(yè)務(wù)(參見下圖),信用證是指開證銀行應(yīng)申請人(買方)的要求并按其指示向受益人開立的載有一定金額的、在一定的期限內(nèi)憑符合規(guī)定的單據(jù)付款的書面保證文件。信用證是國際貿(mào)易中最主要、最常用的支付方式(摘自百度百科)。

之所以舉這個例子,是因為區(qū)塊鏈技術(shù)適用的場景往往是業(yè)務(wù)比較復雜的情況,簡單例子很容易被誤解,這里我通俗易懂的解釋一下,在國際貿(mào)易活動,買賣雙方往往互不信任,進口商(買方)擔心預付款后,出口商(賣方)不發(fā)貨;賣方擔心發(fā)貨后買方不付款(類似詐騙經(jīng)常發(fā)生,例如賣方把貨運到碼頭了,買方就是不付余款,于是只能在當?shù)刭v賣,這時買方再去抄底),典型的麻桿打狼兩頭怕。因此雙方各找了一家銀行作為擔保人,由兩家銀行之間開具憑證,代理進口商、出口商之間業(yè)務(wù)往來,達到條件后由銀行付款,減少進口商、出口商的風險,這就是信用證業(yè)務(wù)。即使這樣,信用證詐騙還是很多,銀行為規(guī)避風險,需要各種書面的證明,反復各種確認…業(yè)務(wù)處理周期會非常長。

上圖中信用證業(yè)務(wù)的參與方包括出口商、進口商、開證行、通知行、寄單行/附議行、運輸公司,是一個典型的多方參與業(yè)務(wù),但通常這些參與方只是一部分,可能還會有海關(guān)、保險公司、評級機構(gòu)等機構(gòu)加入到交易鏈條中。

多參與方業(yè)務(wù)解決信任問題,現(xiàn)有方案成本高在哪里?

解決多參與方業(yè)務(wù)的信任問題,現(xiàn)在是通過建立第三方機構(gòu)完成的,例如上述信用證業(yè)務(wù),就是通過SWIFT組織(環(huán)球同業(yè)銀行金融電訊協(xié)會)的SWIFT系統(tǒng)開立信用證,銀行和其他金融機構(gòu)通過它與同業(yè)交換電文來完成金融交易,由 SWIFT 進行銀行間轉(zhuǎn)發(fā)。

SWIFT僅僅解決了一部分的問題,還差很遠,例如:

  • 業(yè)務(wù)上:那些沒有參加到 SWIFT 的組織無法通過 SWIFT 進行交易,例如一些進口商、出口商、保險公司等等,SWITF也不能做清算,因此銀行在辦理信用證業(yè)務(wù)的時候,只有反復通過各種其他方式確認,避免詐騙發(fā)生,導致業(yè)務(wù)非常復雜,流程很長;
  • 技術(shù)上:多方參與的業(yè)務(wù),一旦在處理業(yè)務(wù)時發(fā)生技術(shù)故障,處理起來就遠比普通業(yè)務(wù)復雜。為了保證少出問題,技術(shù)上的投入會很高,記得用過很多手段,例如曾經(jīng)給每個參與方做過應(yīng)急系統(tǒng),采用過兩個不同廠商的SWIFT網(wǎng)關(guān)互為備份,安排專人排班管理異常情況,而且每個中心接入的標準和模式也不一致,接入中心機構(gòu)帶來的開發(fā)/維護成本都很高。
  • 必須說明的是,為了能把業(yè)務(wù)講清楚,我還是簡化了很多內(nèi)容,例如如何進行銀行間清算、如何進行付款等等。總之,建立一個第三方機構(gòu)來解決信任問題,無論在業(yè)務(wù)上、技術(shù)上復雜度都很高。
  • 區(qū)塊鏈技術(shù)是通過數(shù)據(jù)共享降低信任成本的

    如果有一個分布式的記賬簿:

  • 參與方在記賬之后有相當多的副本存在,不再是一家之言;
  • 保證提交的交易一定被記錄下來;
  • 保證記賬不可逆,無法篡改;
  • 參與方的交易記錄是相對透明的,可以通過這些記錄驗證新的交易。
  • 如果有機構(gòu)建立了這樣一個記賬簿,每個參與方在交易中都通過這個記賬簿進行交互,保證每一筆發(fā)生的交易一定被可靠的記錄下來并不可篡改,不就不必再反復確認,不必擔心技術(shù)問題導致的業(yè)務(wù)流程變更,不必做應(yīng)急系統(tǒng),這樣成本就低多了。

    通過分布式的記賬簿進行數(shù)據(jù)共享,從而降低信任成本,這就是區(qū)塊鏈技術(shù)的價值。

    聯(lián)盟鏈才是應(yīng)用區(qū)塊鏈技術(shù)優(yōu)先選擇的方向

    既然區(qū)塊鏈是一個分布式的記賬簿,那這個記賬簿由誰來建立呢?這是這一技術(shù)應(yīng)用的核心問題。

    目前建立記賬簿的方式有三種:

  • 公有鏈,象互聯(lián)網(wǎng)一樣,做為一種開放的網(wǎng)絡(luò)基礎(chǔ)設(shè)施,向任何人公開,任何人自由加入
  • 私有鏈,一個組織內(nèi)部建立,可以幫助組織內(nèi)部完成審計等工作
  • 建立公有鏈難度高,業(yè)務(wù)場景不夠精準,分布式存儲帶來的性能低下問題阻礙了可用的應(yīng)用場景,而私有鏈脫離了區(qū)塊鏈的商業(yè)價值,只是把區(qū)塊鏈做為一個技術(shù)組件使用。在目前的應(yīng)用場景中,絕大多數(shù)都可以用聯(lián)盟鏈解決,商業(yè)上相對容易成立,性能遠遠高于公有鏈。

    從上述描述就可以理解到,公有鏈太理想,私有鏈所處理的問題,傳統(tǒng)架構(gòu)完全能解決,而針對特定業(yè)務(wù)由企業(yè)聯(lián)盟建立的聯(lián)盟鏈,應(yīng)用方向更清晰,業(yè)務(wù)價值也更加明確,下圖是一個聯(lián)盟鏈的示例:

    從應(yīng)用的角度看,區(qū)塊鏈技術(shù)提供的是一個分布式數(shù)據(jù)庫。區(qū)塊鏈技術(shù)的數(shù)據(jù)共享方式要滿足:(1)多副本、(2)可靠記錄、(3)不可篡改、(4)多方透明幾個特性,上述特性總結(jié)下來,采用區(qū)塊鏈技術(shù)后,應(yīng)用技術(shù)架構(gòu)如上圖所示,可以看出,區(qū)塊鏈技術(shù)對應(yīng)用而言,就是一個分布式數(shù)據(jù)庫。

    區(qū)塊鏈技術(shù)的本質(zhì)是分布式數(shù)據(jù)庫

    區(qū)塊鏈基于密碼學中的橢圓曲線數(shù)字簽名算法(ECDSA)來實現(xiàn)去中心化的P2P系統(tǒng)設(shè)計。當人們在談?wù)摶蚴褂谩皡^(qū)塊鏈”這個詞時,有時候是指數(shù)據(jù)結(jié)構(gòu),有時候是指數(shù)據(jù)庫,有時則是指數(shù)據(jù)庫技術(shù)。

    和區(qū)塊鏈技術(shù)比,分布式數(shù)據(jù)庫的概念顯然更容易被理解,我就從分布式數(shù)據(jù)庫的一些基本概念出來,理解區(qū)塊鏈的技術(shù)實現(xiàn),這些概念包括數(shù)據(jù)存儲、點對點可靠傳輸、存儲過程與觸發(fā)器(智能合約)、數(shù)據(jù)安全。

    區(qū)塊鏈技術(shù)的數(shù)據(jù)共享是一個分布式的記賬簿,交易記錄具備多個副本,因此首先要解決分布式數(shù)據(jù)存儲的問題。

    1、區(qū)塊鏈存儲的基本單元是區(qū)塊,區(qū)塊采用鏈式結(jié)構(gòu),即新增的區(qū)塊(類似數(shù)據(jù)庫一行記錄)都知道自己前一個區(qū)塊(前一行記錄)是什么,可以一直追溯到根,區(qū)塊的標識是區(qū)塊的哈希值,同時鏈式結(jié)構(gòu)保留了業(yè)務(wù)產(chǎn)生的軌跡,可以在新增交易的時候根據(jù)前面的記錄做校驗,保證了區(qū)塊的內(nèi)容不容易篡改。

    這種模式,我們在傳統(tǒng)的數(shù)據(jù)庫設(shè)計也會采用,例如下圖拉鏈表的形式,每次對數(shù)據(jù)的更新都采用追加( Insert而不是Update)模式,有起始時間、失效時間和是否生效標識,保持全部交易歷史。

    區(qū)塊鏈把這一點變成了一種底層固有模式,加入了哈希、時間戳等機制在技術(shù)上保證鏈條的正確性,因此非常有價值。

    2、既然是分布式、多中心的存儲方式,就必須解決存儲時的分布式一致性問題。在區(qū)塊鏈的前身比特幣應(yīng)用中,解決這一問題的方式是工作量證明(POW Proof-Of-Work)方式,即通過工作以獲得指定成果,用成果來證明曾經(jīng)付出的努力。

    這也是接觸區(qū)塊鏈技術(shù)時第一個比較迷惑的地方,我為啥一定要用工作量來證明,是不是還有其他方式?區(qū)塊鏈技術(shù)從比特幣中獨立出來后,大家把這一問題歸結(jié)為共識問題,工作量證明是達成共識的一種方式,這樣就清晰多了。于是就產(chǎn)生了權(quán)益證明(POS Proof of Stake)方式,是一種通過業(yè)務(wù)規(guī)則達成共識的方式;實用拜占庭容錯(PBFT Practical Byzantine Fault Tolerance)方式,是一種通過技術(shù)規(guī)則達成共識的機制。在公有鏈上,工作量證明(POW)還是一種最主要的共識方式,不容易取代,但在聯(lián)盟鏈上,完全可以根據(jù)自己的情況,創(chuàng)造出新的共識方式出來。我們就根據(jù)這一想法,在特定業(yè)務(wù)中創(chuàng)造過共識算法,解決分布式數(shù)據(jù)存儲的一致性問題。

    點對點可靠傳輸:可靠消息與P2P

    區(qū)塊鏈技術(shù)是一組技術(shù)的組合,既然是一個分布式的記賬簿,就要解決數(shù)據(jù)可靠傳輸問題。包括記賬節(jié)點(信任節(jié)點)之間、非記賬節(jié)點(非信任節(jié)點)、客戶端與記賬節(jié)點(信任節(jié)點)之間的數(shù)據(jù)傳輸。在以前我們的方案中,往往通過可靠消息或者P2P方式解決數(shù)據(jù)傳輸問題,這些技術(shù)也被用于區(qū)塊鏈技術(shù)中。但必須說明的是,在真實業(yè)務(wù)場景下,不可能把所有的數(shù)據(jù)都記錄在記賬簿中,部分業(yè)務(wù)數(shù)據(jù)還是要保存在自己的系統(tǒng)中,這就還需要在技術(shù)框架上做到本地業(yè)務(wù)數(shù)據(jù)與區(qū)塊鏈的記賬簿保持一致,后文會具體闡述,總之,區(qū)塊鏈平臺只能保證自身數(shù)據(jù)之間的一致,業(yè)務(wù)不能完全依賴區(qū)塊鏈平臺保證數(shù)據(jù)一致性。

    智能合約:觸發(fā)器與存儲過程

    智能合約是指當一定條件滿足的情況下,可以被自動執(zhí)行的數(shù)字化合約。實現(xiàn)這一特性,在數(shù)據(jù)庫中就是由觸發(fā)器和存儲過程完成的。雖然在目前流行的應(yīng)用架構(gòu)中,都不建議把邏輯寫在存儲過程中,但觸發(fā)器和存儲過程還是常用的工具,尤其在數(shù)據(jù)遷移相關(guān)的運維活動中。區(qū)塊鏈技術(shù)中智能合約就是觸發(fā)器和存儲過程,他是一個在沙箱中運行的腳本,用于執(zhí)行區(qū)塊鏈業(yè)務(wù)中的業(yè)務(wù)邏輯,也可以用于各種檢查。舉個例子,A產(chǎn)生一筆支付時,可以通過智能合約在數(shù)據(jù)鏈上進行檢查,如果發(fā)現(xiàn)A的余額無法支付這筆交易,就可以中止這筆交易。和存儲過程相比,智能合約運行在沙箱之中,不能對外部 API 做調(diào)用。這也比較好理解,如果允許外部調(diào)用,就可能無法保證自身的數(shù)據(jù)一致性,后面我們會講到這種缺陷如何彌補。美中不足的是目前的智能合約并不支持 SQL 語法。

    數(shù)據(jù)安全:用業(yè)務(wù)手段達成妥協(xié)

    交易數(shù)據(jù)是透明的,但不是全部透明,而是相對透明,這是區(qū)塊鏈技術(shù)的一個難點,關(guān)鍵有二:(1)如何保護隱私,僅僅能看到自己可見的數(shù)據(jù);(2)密鑰分配問題,例如新加入鏈中的一個節(jié)點會被分配一個新的密鑰,如何用這個密鑰解讀以前鏈中存儲的信息??梢娕c不可見,這是一個矛盾,理論上沒有一個完美的方案,這里我不對區(qū)塊鏈技術(shù)如何加密、如何做密鑰管理、如何同態(tài)加密等方式做解讀,而是講講如何通過業(yè)務(wù)方法而不是技術(shù)手段規(guī)避這一問題。舉個例子,在一個小企業(yè)支付的聯(lián)盟鏈中,核心企業(yè)包括某銀行、企業(yè)A,為A的上下游企業(yè)提供信貸業(yè)務(wù),對于所有交易的數(shù)據(jù),銀行和核心企業(yè)A都是可見的,他們擁有記賬節(jié)點,對于其他加盟企業(yè),只擁有非記賬節(jié)點,他們雖然也有全部的數(shù)據(jù),但是只能看到自己相關(guān)的數(shù)據(jù)。很明顯,加盟企業(yè)放棄了自己的部分隱私權(quán),但也得到了生意的機會,這種方式加盟企業(yè)是可以接受的,就好比貸款企業(yè)要向銀行提供經(jīng)營數(shù)據(jù)一樣。數(shù)據(jù)安全問題,在技術(shù)上很難解決,但通過業(yè)務(wù)手段是可以規(guī)避的,這也是我們看好聯(lián)盟鏈的重要原因。

    為分布式應(yīng)用而生的微服務(wù),與區(qū)塊鏈技術(shù)是天生一對

    最后說說區(qū)塊鏈技術(shù)與微服務(wù)架構(gòu)的關(guān)系。大家知道,微服務(wù)架構(gòu)是一個分布式的應(yīng)用技術(shù)架構(gòu),目的是有效的對應(yīng)用進行拆分,實現(xiàn)敏捷開發(fā)、快速演化、便捷容錯與彈性伸縮。

    微服務(wù)的一個核心概念是API網(wǎng)關(guān),由于服務(wù)的顆粒變細,網(wǎng)關(guān)承擔著安全與訪問認證等諸多職能。而在現(xiàn)有的大多數(shù)微服務(wù)架構(gòu)中,大家都更多的在談接入網(wǎng)關(guān)的概念,實際上按照信息的流向,除接入網(wǎng)關(guān)外,微服務(wù)還應(yīng)該有接出網(wǎng)關(guān)的概念。

    前面說到,區(qū)塊鏈技術(shù)本質(zhì)上就是分布式數(shù)據(jù)庫,微服務(wù)架構(gòu)與區(qū)塊鏈技術(shù)的結(jié)合,并不能簡單的看成是微服務(wù)與數(shù)據(jù)庫的結(jié)合,而應(yīng)該把區(qū)塊鏈平臺做為一個第三方應(yīng)用進行交互,這也是微服務(wù)架構(gòu)很好發(fā)揮作用的地方。上圖中紅圈所示的就是微服務(wù)與區(qū)塊鏈平臺進行交互的方式。而微服務(wù)的接出網(wǎng)關(guān),就應(yīng)該起到區(qū)塊鏈網(wǎng)關(guān)的作用。

    雖然目前的區(qū)塊鏈平臺一般都有SDK和REST服務(wù)兩種方式,按照上述的原則,一般不要使用 SDK,而是遠程調(diào)用方式,采用微服務(wù)的設(shè)計原則,使用區(qū)塊鏈網(wǎng)關(guān),把微服務(wù)與區(qū)塊鏈平臺集成的功能集中到網(wǎng)關(guān)中,見下圖:

    微服務(wù)通過區(qū)塊鏈網(wǎng)關(guān)與區(qū)塊鏈平臺交互,區(qū)塊鏈網(wǎng)關(guān)主要功能包括通訊網(wǎng)關(guān)、事件監(jiān)聽,同時配合微服務(wù)應(yīng)用框架,完成數(shù)據(jù)一致性、對賬功能。與區(qū)塊鏈網(wǎng)關(guān)集成的能力,是微服務(wù)架構(gòu)天生具備的。所以我們說微服務(wù)與區(qū)塊鏈,天生是一對。

    通訊網(wǎng)關(guān):處理微服務(wù)發(fā)起的對區(qū)塊鏈平臺的調(diào)用

    由于區(qū)塊鏈平臺的服務(wù)能力(每秒交易數(shù) TPS)有限,為保證區(qū)塊鏈平臺的可用性,區(qū)塊鏈網(wǎng)關(guān)采用了異步處理模式,實現(xiàn)限流、隔離、服務(wù)升降級等能力。

    網(wǎng)關(guān)在微服務(wù)應(yīng)用與區(qū)塊鏈平臺之間建立了隔離,避免平臺與微服務(wù)之間互相影響,這是一種 MiddleBox 的集成方式,用一個獨立的基礎(chǔ)設(shè)施做集成。微服務(wù)之間的集成往往采用 MiddlePipe 的模式,但是區(qū)塊鏈平臺做為一個第三方應(yīng)用,采用 MiddleBox 方式比較好,統(tǒng)一管理與運維比較方便。

    由于區(qū)塊鏈平臺提供的接口各有不同,區(qū)塊鏈網(wǎng)關(guān)在接受請求后記錄交易流水,把區(qū)塊鏈平臺提供的服務(wù)模擬為冪等服務(wù),調(diào)用者可以多次調(diào)用區(qū)塊鏈網(wǎng)關(guān),而區(qū)塊鏈網(wǎng)關(guān)僅僅調(diào)用區(qū)塊鏈平臺一次。為方便運維,我們可以為區(qū)塊鏈平臺提供的服務(wù)定義SLA,根據(jù)這些定義靈活的進行調(diào)用的控制。

    區(qū)塊鏈網(wǎng)關(guān)的內(nèi)部實現(xiàn)是一個 SEDA 架構(gòu)(分階段事件驅(qū)動架構(gòu)),把接入、接出和處理分開(處理主要是記錄流水、報文打解包、安全效驗等功能),三階段之間用隊列連接,采用異步模擬同步的方式,這是一個用于集成的基礎(chǔ)架構(gòu)。

    接入、處理、接出三個階段可處理資源是可以調(diào)配的,資源主要包括處理線程和接入接出的連接,根據(jù)不同業(yè)務(wù)可以有不同的資源為之服務(wù),這樣升降級、限流等特性就比較容易實現(xiàn)。

    為了方便運維,需要對業(yè)務(wù)有分組的能力,可以根據(jù)分組進行批量的運維管理。

    事件監(jiān)聽:Hook與輪詢模式

    如果記賬簿發(fā)生了改變,如何通知微服務(wù)呢,這就是區(qū)塊鏈網(wǎng)關(guān)中事件監(jiān)聽發(fā)揮的作用。目前很多區(qū)塊鏈平臺并沒有提供事件接口,即使未來有也很難統(tǒng)一,前面也說過,智能合約運行在沙箱中,為保證數(shù)據(jù)一致性不可能支持對外部服務(wù)的調(diào)用,也不能做為事件監(jiān)聽的回調(diào),這樣就需要在區(qū)塊鏈網(wǎng)關(guān)中進行處理。

    微服務(wù)可以注冊對某一類交易進行監(jiān)聽,區(qū)塊鏈網(wǎng)關(guān)定時通過區(qū)塊鏈平臺的查詢接口檢索,發(fā)現(xiàn)數(shù)據(jù)變更時通知微服務(wù)。這是一個效率不高的方法,但區(qū)塊鏈平臺本身性能也不高,時延主要由共識機制造成,輪詢的做法并不會有太大影響,這也是期待區(qū)塊鏈平臺本身提升的地方。

    數(shù)據(jù)一致性:可靠事件模式是首選

    不能把所有數(shù)據(jù)都存儲在區(qū)塊鏈平臺中,而是將交易數(shù)據(jù)存儲在區(qū)塊鏈平臺,這樣就有了本地數(shù)據(jù)庫的數(shù)據(jù)與區(qū)塊鏈交易數(shù)據(jù)的一致性問題。

    一般來說,我們不能依賴區(qū)塊鏈平臺支持事務(wù)的回滾,因為這個分布式的記賬簿一旦記賬就是不可更改的,我們甚至不能指望區(qū)塊鏈平臺實時給應(yīng)用反饋記賬是否成功,因為有可能返回超時錯誤,不清楚是否記賬成功。于是,區(qū)塊鏈網(wǎng)關(guān)需要和微服務(wù)配合保證數(shù)據(jù)的一致性。

    一般情況下微服務(wù)中的業(yè)務(wù)處理采用異步模式,發(fā)出記賬申請后處于等待狀態(tài),區(qū)塊鏈網(wǎng)關(guān)將記賬申請轉(zhuǎn)發(fā)給區(qū)塊鏈平臺。如果區(qū)塊鏈平臺返回接受Accept或者拒絕Reject,將結(jié)果通知微服務(wù);如果區(qū)塊鏈平臺返回超時或者不可確定錯誤,即開始定時輪詢,得到結(jié)果后通知微服務(wù)。同時,微服務(wù)本身需要具備事務(wù)補償?shù)哪J?#xff0c;如果記賬失敗進行反交易處理。這種數(shù)據(jù)一致性處理的方式,是微服務(wù)多種處理方式中的一種,我們一般使用服務(wù)編排的方式降低這種模式的開發(fā)復雜度。

    下面是一個示例:

    這是一個可靠事件與區(qū)塊鏈交互的流程:

    1)應(yīng)用框架接到請求后首先記錄業(yè)務(wù)流水,然后執(zhí)行業(yè)務(wù)邏輯,記錄業(yè)務(wù)數(shù)據(jù),最后在事件表中留下對區(qū)塊鏈平臺調(diào)用的記錄,事務(wù)完成?
    2)事件處理輪詢事件記錄,有更新時通過區(qū)塊鏈網(wǎng)關(guān)調(diào)用區(qū)塊鏈平臺,如果調(diào)用成功,改變事件狀態(tài),如果失敗就要調(diào)用業(yè)務(wù)補償?shù)臋C制了。

    對賬

    既然數(shù)據(jù)有本地存放,也有區(qū)塊鏈平臺存放,就有不一致的可能,就必須對賬。傳統(tǒng)對賬有以我為主、以他為主兩種模式。這里就只能以他為主,以區(qū)塊鏈平臺為主了。由于區(qū)塊鏈技術(shù)針對交易的特點對存儲結(jié)構(gòu)進行了要求,利用已有的時間戳、交易先后次序,可以是對賬變得更加容易。

    基本的對賬處理流程如下

  • 區(qū)塊鏈平臺和企業(yè)應(yīng)用的記錄必須有關(guān)聯(lián)的id(可以是多要素的組合)
  • 區(qū)塊鏈平臺和企業(yè)應(yīng)用都要保證生成的對賬文件明細記錄的連續(xù)性
  • 對于“隔日賬”需重復核對
  • 結(jié)語

    區(qū)塊鏈是一種新興的技術(shù),他的本質(zhì)是一種加入業(yè)務(wù)特性的分布式數(shù)據(jù)庫,通過對區(qū)塊鏈技術(shù)的研究,我們找到了業(yè)務(wù)與區(qū)塊鏈技術(shù)結(jié)合的方式,提出了微服務(wù)應(yīng)用架構(gòu)集成區(qū)塊鏈的技術(shù)模式。

    1、區(qū)塊鏈的業(yè)務(wù)價值是通過數(shù)據(jù)共享降低信任成本。

    區(qū)塊鏈建立了一個記賬簿,每個參與方在交易中都通過這個記賬簿進行交互,保證每一筆發(fā)生的交易一定被可靠的記錄下來并不可篡改,不必再反復確認,不必擔心技術(shù)問題導致的業(yè)務(wù)流程變更,不必做應(yīng)急系統(tǒng),從而降低了信任成本。

    2、區(qū)塊鏈技術(shù)的本質(zhì)是分布式數(shù)據(jù)庫。

    區(qū)塊鏈技術(shù)的數(shù)據(jù)共享方式要滿足(1)多副本、(2)可靠記錄、(3)不可篡改、(4)多方透明幾個特性,總結(jié)下來,區(qū)塊鏈技術(shù)對應(yīng)用而言,就是一個分布式數(shù)據(jù)庫,分別對應(yīng)分布式數(shù)據(jù)庫的(1)分布式存儲、(2)點對點可靠傳輸、(3)存儲過程與(4)數(shù)據(jù)安全幾個方面。

    3、為分布式應(yīng)用而生的微服務(wù),與區(qū)塊鏈技術(shù)是天生的一對。

    微服務(wù)通過區(qū)塊鏈網(wǎng)關(guān)與區(qū)塊鏈平臺交互,區(qū)塊鏈網(wǎng)關(guān)主要功能包括通訊網(wǎng)關(guān)、事件監(jiān)聽,同時配合微服務(wù)應(yīng)用框架,完成數(shù)據(jù)一致性、對賬功能。與區(qū)塊鏈網(wǎng)關(guān)集成的能力,是微服務(wù)架構(gòu)天生具備的。

    以上是對我們研究成果一個簡要介紹,后續(xù)我們還會對使用區(qū)塊鏈技術(shù)的細節(jié)進行分析,與大家共同探討。

    附記:理解區(qū)塊鏈技術(shù)常見的幾個困惑

    從剛剛接觸區(qū)塊鏈技術(shù)的一頭霧水,到概念的逐步清晰,再到區(qū)塊鏈應(yīng)用的研發(fā),經(jīng)歷很多困惑,這里列出幾個常見的困惑:

    困惑1:比特幣是區(qū)塊鏈技術(shù)的一個應(yīng)用,不能把比特幣應(yīng)用的所有內(nèi)容都歸結(jié)為區(qū)塊鏈技術(shù)

    上文提到,區(qū)塊鏈技術(shù)從比特幣中獨立出來是 2014 年左右的事情,此前每每舉出區(qū)塊鏈的案例都是比特幣,給區(qū)塊鏈技術(shù)的應(yīng)用造成了很多誤解。我建議先了解區(qū)塊鏈技術(shù),再了解比特幣,先理解聯(lián)盟鏈的業(yè)務(wù)場景,再了解公有鏈的業(yè)務(wù)場景,公有鏈看作是聯(lián)盟鏈的一種大規(guī)模延展,,可以少走一些彎路。

    困惑2:公有鏈情況下數(shù)據(jù)存儲性能不高,但聯(lián)盟鏈的性能可以遠高于公有鏈,能滿足多數(shù)場景的要求

    數(shù)據(jù)一致性問題是分布式存儲最大的問題,而并發(fā)越高,沖突的概率就越大。區(qū)塊鏈技術(shù)之所以能支持的每秒交易數(shù)(TPS)不高,主要是共識機制比較復雜,或者說共識機制就是刻意為了降低并發(fā)性,減少數(shù)據(jù)沖突的概率。在公有鏈上,這是一個無法逾越的問題,只能從事實時性要求不敏感的業(yè)務(wù)。但是,在聯(lián)盟鏈中,由于鏈中的參與方并不多,也不需要每個節(jié)點都記賬,就可以使用一些性能更高的共識機制,例如前面說的PBFT。我們曾經(jīng)嘗試過一種全對等的算法,可以支持更高的性能。

    困惑3:應(yīng)用區(qū)塊鏈技術(shù)不一定必須有礦工來挖礦

    初次接觸區(qū)塊鏈技術(shù),礦工/挖礦這個概念讓人非常費解:(1)為什么一定要挖礦?(2)為什么要給記賬成功的節(jié)點獎勵比特幣來鼓勵記賬?(3)非比特幣的業(yè)務(wù)中如何鼓勵記賬?這個困惑歸根結(jié)底還是把區(qū)塊鏈和比特幣混淆造成的。前面說過,挖礦是通過工作量證明(POW)達成共識的機制,挖礦能力愈強就取得了記錄權(quán)。更重要的是比特幣的貨幣屬性,發(fā)行貨幣要么靠國家信用(例如紙幣),要么靠奇缺資源(例如黃金),比特幣為了防止濫發(fā),就需要用算力做為一種奇缺資源。這樣說來,比特幣實際上把共識算法、貨幣屬性、鼓勵記賬這幾件事都用挖礦來解決了,思路確實精妙。但是,在業(yè)務(wù)規(guī)則不同的聯(lián)盟鏈中就不一樣了,除了有其他更高效的共識算法外,不需要奇缺資源,不需要專門對記賬做鼓勵,因為必須記賬已經(jīng)是核心企業(yè)之間的契約,可以通過技術(shù)手段保證數(shù)據(jù)的同步,支持審計等能力,自然就不需要挖礦了。

    困惑4:目前應(yīng)用區(qū)塊鏈技術(shù)不是去中心,而是多中心

    去中心是一個理想,經(jīng)常有人問(1)為什么要去中心?去中心有什么好處?(2)真的能去中心嗎?后來,我深入研究聯(lián)盟鏈的場景時發(fā)現(xiàn),實際的業(yè)務(wù)場景大多是多中心(這又是比特幣惹的禍,他真的想去中心),例如上述的企業(yè)聯(lián)盟方式,幾個建立聯(lián)盟的核心企業(yè)就是多中心,他們共同成為一個新的中心。傳統(tǒng)方式建立新的中心,往往通過建立清算機構(gòu)的方式,而區(qū)塊鏈技術(shù)讓建立中心的成本降低了。

    困惑5:不是所有的區(qū)塊鏈節(jié)點都是記賬節(jié)點,很多節(jié)點僅僅用來進行數(shù)據(jù)同步而已

    多中心就意味著不是每個節(jié)點都需要記賬,記賬的工作由幾個中心節(jié)點負責就可以了,其他節(jié)點與記賬節(jié)點間是數(shù)據(jù)同步的關(guān)系,也就是非記賬節(jié)點上也有全部數(shù)據(jù)。聯(lián)盟鏈中非記賬節(jié)點一般處在加盟企業(yè),由于數(shù)據(jù)可見性的要求,非記賬節(jié)點中的數(shù)據(jù)并不是都可見的,但是這一副本可以做為一種法律依據(jù),提高了篡改數(shù)據(jù)的成本。

    從數(shù)據(jù)的角度來看,區(qū)塊鏈本質(zhì)是一種分布式數(shù)據(jù)庫,這里的“分布式”是指區(qū)塊鏈技術(shù)利用鏈式存儲結(jié)構(gòu)不僅解決了分布式數(shù)據(jù)存儲問題,也解決了存儲時的分布式一致性問題。區(qū)塊鏈技術(shù)利用分布式記賬簿保證數(shù)據(jù)可靠傳輸和訪問,利用可自動執(zhí)行的智能合約來編程和操作數(shù)據(jù)。所以,我認為,基于分布式數(shù)據(jù)庫來理解區(qū)塊鏈,認清區(qū)塊鏈技術(shù)常見的一些困惑和誤區(qū),可以讓大家對區(qū)塊鏈有個比較正確的理解方式。

    當微服務(wù)撞上區(qū)塊鏈

    區(qū)塊鏈?微服務(wù)?普元 閱讀1516?

    作者:普元CTO 焦烈焱?
    更多區(qū)塊鏈文章投稿,請郵箱至jingqi@csdn.net?
    中國云計算技術(shù)大會http://cctc.csdn.net,在5月19日背景,將舉辦全天的區(qū)塊鏈技術(shù)峰會專場,歡迎大家與區(qū)塊鏈專家一起探討區(qū)塊鏈的技術(shù)趨勢?,F(xiàn)在購票還有折扣。

    導語

    每一種新技術(shù)的產(chǎn)生與發(fā)展,都會與既有的技術(shù)與實踐存在著聯(lián)系,例如微服務(wù)作為一種技術(shù)架構(gòu),實際上是在SOA架構(gòu)和JavaEE等分布式架構(gòu)的基礎(chǔ)上,進一步明晰了服務(wù)實現(xiàn)的方式與規(guī)則。區(qū)塊鏈技術(shù)脫胎于比特幣,作為一種多方信任的交易和技術(shù)模型,被包括國家、政府、監(jiān)管機構(gòu)等諸多業(yè)務(wù)方所關(guān)注,反而是技術(shù)從業(yè)者有些茫然,這一技術(shù)到底是什么,解決什么問題,能夠用在哪里普元近年來持續(xù)對微服務(wù)和區(qū)塊鏈技術(shù)進行了研究,這里和大家分享一下研究的成果。我們的研究重點放在了如下幾個方面:

    1. 區(qū)塊鏈技術(shù)適用的應(yīng)用場景有哪些,該技術(shù)帶來的價值是什么??
    2. 區(qū)塊鏈技術(shù)是由哪些技術(shù)組合而成,和現(xiàn)有技術(shù)的關(guān)系如何??
    3. 采用區(qū)塊鏈技術(shù)后,應(yīng)用技術(shù)架構(gòu)是什么,與微服務(wù)架構(gòu)的關(guān)系,現(xiàn)有應(yīng)用如何進行遷移?

    區(qū)塊鏈的業(yè)務(wù)價值是通過數(shù)據(jù)共享降低信任成本

    區(qū)塊鏈技術(shù)是從比特幣開始的,2008年由中本聰提出開始,造成了一個比特幣的熱潮。但是,比特幣的熱潮退去后,比特幣提出的問題和解決方式卻吸引著我們。2014年左右區(qū)塊鏈逐步從比特幣中脫離出來,做為一種獨立的技術(shù)發(fā)展,進入了 2.0 時代,以數(shù)字資產(chǎn)的方式解決商業(yè)的信任問題,同時用數(shù)字化手段提高業(yè)務(wù)的效率,在很多業(yè)務(wù)中已經(jīng)有了嘗試。

    做為一種獨立的技術(shù)發(fā)展,區(qū)塊鏈分為公有鏈、聯(lián)盟鏈、私有鏈三個方向。而從業(yè)務(wù)角度看,區(qū)塊鏈的核心價值在于通過數(shù)據(jù)共享建立了多方的信任機制。

    多參與方業(yè)務(wù)產(chǎn)生的信任問題是采用區(qū)塊鏈技術(shù)的源動力

    信任問題,始終是一個大問題,為了解決信任問題,人類投入了大量的時間和金錢。尤其是多個參與方參加的業(yè)務(wù),信任的成本更高,這里我舉一個復雜的例子:信用證業(yè)務(wù)(參見下圖),信用證是指開證銀行應(yīng)申請人(買方)的要求并按其指示向受益人開立的載有一定金額的、在一定的期限內(nèi)憑符合規(guī)定的單據(jù)付款的書面保證文件。信用證是國際貿(mào)易中最主要、最常用的支付方式(摘自百度百科)。

    之所以舉這個例子,是因為區(qū)塊鏈技術(shù)適用的場景往往是業(yè)務(wù)比較復雜的情況,簡單例子很容易被誤解,這里我通俗易懂的解釋一下,在國際貿(mào)易活動,買賣雙方往往互不信任,進口商(買方)擔心預付款后,出口商(賣方)不發(fā)貨;賣方擔心發(fā)貨后買方不付款(類似詐騙經(jīng)常發(fā)生,例如賣方把貨運到碼頭了,買方就是不付余款,于是只能在當?shù)刭v賣,這時買方再去抄底),典型的麻桿打狼兩頭怕。因此雙方各找了一家銀行作為擔保人,由兩家銀行之間開具憑證,代理進口商、出口商之間業(yè)務(wù)往來,達到條件后由銀行付款,減少進口商、出口商的風險,這就是信用證業(yè)務(wù)。即使這樣,信用證詐騙還是很多,銀行為規(guī)避風險,需要各種書面的證明,反復各種確認…業(yè)務(wù)處理周期會非常長。

    上圖中信用證業(yè)務(wù)的參與方包括出口商、進口商、開證行、通知行、寄單行/附議行、運輸公司,是一個典型的多方參與業(yè)務(wù),但通常這些參與方只是一部分,可能還會有海關(guān)、保險公司、評級機構(gòu)等機構(gòu)加入到交易鏈條中。

    多參與方業(yè)務(wù)解決信任問題,現(xiàn)有方案成本高在哪里?

    解決多參與方業(yè)務(wù)的信任問題,現(xiàn)在是通過建立第三方機構(gòu)完成的,例如上述信用證業(yè)務(wù),就是通過SWIFT組織(環(huán)球同業(yè)銀行金融電訊協(xié)會)的SWIFT系統(tǒng)開立信用證,銀行和其他金融機構(gòu)通過它與同業(yè)交換電文來完成金融交易,由 SWIFT 進行銀行間轉(zhuǎn)發(fā)。

    SWIFT僅僅解決了一部分的問題,還差很遠,例如:

  • 業(yè)務(wù)上:那些沒有參加到 SWIFT 的組織無法通過 SWIFT 進行交易,例如一些進口商、出口商、保險公司等等,SWITF也不能做清算,因此銀行在辦理信用證業(yè)務(wù)的時候,只有反復通過各種其他方式確認,避免詐騙發(fā)生,導致業(yè)務(wù)非常復雜,流程很長;
  • 技術(shù)上:多方參與的業(yè)務(wù),一旦在處理業(yè)務(wù)時發(fā)生技術(shù)故障,處理起來就遠比普通業(yè)務(wù)復雜。為了保證少出問題,技術(shù)上的投入會很高,記得用過很多手段,例如曾經(jīng)給每個參與方做過應(yīng)急系統(tǒng),采用過兩個不同廠商的SWIFT網(wǎng)關(guān)互為備份,安排專人排班管理異常情況,而且每個中心接入的標準和模式也不一致,接入中心機構(gòu)帶來的開發(fā)/維護成本都很高。
  • 必須說明的是,為了能把業(yè)務(wù)講清楚,我還是簡化了很多內(nèi)容,例如如何進行銀行間清算、如何進行付款等等。總之,建立一個第三方機構(gòu)來解決信任問題,無論在業(yè)務(wù)上、技術(shù)上復雜度都很高。
  • 區(qū)塊鏈技術(shù)是通過數(shù)據(jù)共享降低信任成本的

    如果有一個分布式的記賬簿:

  • 參與方在記賬之后有相當多的副本存在,不再是一家之言;
  • 保證提交的交易一定被記錄下來;
  • 保證記賬不可逆,無法篡改;
  • 參與方的交易記錄是相對透明的,可以通過這些記錄驗證新的交易。
  • 如果有機構(gòu)建立了這樣一個記賬簿,每個參與方在交易中都通過這個記賬簿進行交互,保證每一筆發(fā)生的交易一定被可靠的記錄下來并不可篡改,不就不必再反復確認,不必擔心技術(shù)問題導致的業(yè)務(wù)流程變更,不必做應(yīng)急系統(tǒng),這樣成本就低多了。

    通過分布式的記賬簿進行數(shù)據(jù)共享,從而降低信任成本,這就是區(qū)塊鏈技術(shù)的價值。

    聯(lián)盟鏈才是應(yīng)用區(qū)塊鏈技術(shù)優(yōu)先選擇的方向

    既然區(qū)塊鏈是一個分布式的記賬簿,那這個記賬簿由誰來建立呢?這是這一技術(shù)應(yīng)用的核心問題。

    目前建立記賬簿的方式有三種:

  • 公有鏈,象互聯(lián)網(wǎng)一樣,做為一種開放的網(wǎng)絡(luò)基礎(chǔ)設(shè)施,向任何人公開,任何人自由加入
  • 私有鏈,一個組織內(nèi)部建立,可以幫助組織內(nèi)部完成審計等工作
  • 建立公有鏈難度高,業(yè)務(wù)場景不夠精準,分布式存儲帶來的性能低下問題阻礙了可用的應(yīng)用場景,而私有鏈脫離了區(qū)塊鏈的商業(yè)價值,只是把區(qū)塊鏈做為一個技術(shù)組件使用。在目前的應(yīng)用場景中,絕大多數(shù)都可以用聯(lián)盟鏈解決,商業(yè)上相對容易成立,性能遠遠高于公有鏈。

    從上述描述就可以理解到,公有鏈太理想,私有鏈所處理的問題,傳統(tǒng)架構(gòu)完全能解決,而針對特定業(yè)務(wù)由企業(yè)聯(lián)盟建立的聯(lián)盟鏈,應(yīng)用方向更清晰,業(yè)務(wù)價值也更加明確,下圖是一個聯(lián)盟鏈的示例:

    從應(yīng)用的角度看,區(qū)塊鏈技術(shù)提供的是一個分布式數(shù)據(jù)庫。區(qū)塊鏈技術(shù)的數(shù)據(jù)共享方式要滿足:(1)多副本、(2)可靠記錄、(3)不可篡改、(4)多方透明幾個特性,上述特性總結(jié)下來,采用區(qū)塊鏈技術(shù)后,應(yīng)用技術(shù)架構(gòu)如上圖所示,可以看出,區(qū)塊鏈技術(shù)對應(yīng)用而言,就是一個分布式數(shù)據(jù)庫。

    區(qū)塊鏈技術(shù)的本質(zhì)是分布式數(shù)據(jù)庫

    區(qū)塊鏈基于密碼學中的橢圓曲線數(shù)字簽名算法(ECDSA)來實現(xiàn)去中心化的P2P系統(tǒng)設(shè)計。當人們在談?wù)摶蚴褂谩皡^(qū)塊鏈”這個詞時,有時候是指數(shù)據(jù)結(jié)構(gòu),有時候是指數(shù)據(jù)庫,有時則是指數(shù)據(jù)庫技術(shù)。

    和區(qū)塊鏈技術(shù)比,分布式數(shù)據(jù)庫的概念顯然更容易被理解,我就從分布式數(shù)據(jù)庫的一些基本概念出來,理解區(qū)塊鏈的技術(shù)實現(xiàn),這些概念包括數(shù)據(jù)存儲、點對點可靠傳輸、存儲過程與觸發(fā)器(智能合約)、數(shù)據(jù)安全。

    區(qū)塊鏈技術(shù)的數(shù)據(jù)共享是一個分布式的記賬簿,交易記錄具備多個副本,因此首先要解決分布式數(shù)據(jù)存儲的問題。

    1、區(qū)塊鏈存儲的基本單元是區(qū)塊,區(qū)塊采用鏈式結(jié)構(gòu),即新增的區(qū)塊(類似數(shù)據(jù)庫一行記錄)都知道自己前一個區(qū)塊(前一行記錄)是什么,可以一直追溯到根,區(qū)塊的標識是區(qū)塊的哈希值,同時鏈式結(jié)構(gòu)保留了業(yè)務(wù)產(chǎn)生的軌跡,可以在新增交易的時候根據(jù)前面的記錄做校驗,保證了區(qū)塊的內(nèi)容不容易篡改。

    這種模式,我們在傳統(tǒng)的數(shù)據(jù)庫設(shè)計也會采用,例如下圖拉鏈表的形式,每次對數(shù)據(jù)的更新都采用追加( Insert而不是Update)模式,有起始時間、失效時間和是否生效標識,保持全部交易歷史。

    區(qū)塊鏈把這一點變成了一種底層固有模式,加入了哈希、時間戳等機制在技術(shù)上保證鏈條的正確性,因此非常有價值。

    2、既然是分布式、多中心的存儲方式,就必須解決存儲時的分布式一致性問題。在區(qū)塊鏈的前身比特幣應(yīng)用中,解決這一問題的方式是工作量證明(POW Proof-Of-Work)方式,即通過工作以獲得指定成果,用成果來證明曾經(jīng)付出的努力。

    這也是接觸區(qū)塊鏈技術(shù)時第一個比較迷惑的地方,我為啥一定要用工作量來證明,是不是還有其他方式?區(qū)塊鏈技術(shù)從比特幣中獨立出來后,大家把這一問題歸結(jié)為共識問題,工作量證明是達成共識的一種方式,這樣就清晰多了。于是就產(chǎn)生了權(quán)益證明(POS Proof of Stake)方式,是一種通過業(yè)務(wù)規(guī)則達成共識的方式;實用拜占庭容錯(PBFT Practical Byzantine Fault Tolerance)方式,是一種通過技術(shù)規(guī)則達成共識的機制。在公有鏈上,工作量證明(POW)還是一種最主要的共識方式,不容易取代,但在聯(lián)盟鏈上,完全可以根據(jù)自己的情況,創(chuàng)造出新的共識方式出來。我們就根據(jù)這一想法,在特定業(yè)務(wù)中創(chuàng)造過共識算法,解決分布式數(shù)據(jù)存儲的一致性問題。

    點對點可靠傳輸:可靠消息與P2P

    區(qū)塊鏈技術(shù)是一組技術(shù)的組合,既然是一個分布式的記賬簿,就要解決數(shù)據(jù)可靠傳輸問題。包括記賬節(jié)點(信任節(jié)點)之間、非記賬節(jié)點(非信任節(jié)點)、客戶端與記賬節(jié)點(信任節(jié)點)之間的數(shù)據(jù)傳輸。在以前我們的方案中,往往通過可靠消息或者P2P方式解決數(shù)據(jù)傳輸問題,這些技術(shù)也被用于區(qū)塊鏈技術(shù)中。但必須說明的是,在真實業(yè)務(wù)場景下,不可能把所有的數(shù)據(jù)都記錄在記賬簿中,部分業(yè)務(wù)數(shù)據(jù)還是要保存在自己的系統(tǒng)中,這就還需要在技術(shù)框架上做到本地業(yè)務(wù)數(shù)據(jù)與區(qū)塊鏈的記賬簿保持一致,后文會具體闡述,總之,區(qū)塊鏈平臺只能保證自身數(shù)據(jù)之間的一致,業(yè)務(wù)不能完全依賴區(qū)塊鏈平臺保證數(shù)據(jù)一致性。

    智能合約:觸發(fā)器與存儲過程

    智能合約是指當一定條件滿足的情況下,可以被自動執(zhí)行的數(shù)字化合約。實現(xiàn)這一特性,在數(shù)據(jù)庫中就是由觸發(fā)器和存儲過程完成的。雖然在目前流行的應(yīng)用架構(gòu)中,都不建議把邏輯寫在存儲過程中,但觸發(fā)器和存儲過程還是常用的工具,尤其在數(shù)據(jù)遷移相關(guān)的運維活動中。區(qū)塊鏈技術(shù)中智能合約就是觸發(fā)器和存儲過程,他是一個在沙箱中運行的腳本,用于執(zhí)行區(qū)塊鏈業(yè)務(wù)中的業(yè)務(wù)邏輯,也可以用于各種檢查。舉個例子,A產(chǎn)生一筆支付時,可以通過智能合約在數(shù)據(jù)鏈上進行檢查,如果發(fā)現(xiàn)A的余額無法支付這筆交易,就可以中止這筆交易。和存儲過程相比,智能合約運行在沙箱之中,不能對外部 API 做調(diào)用。這也比較好理解,如果允許外部調(diào)用,就可能無法保證自身的數(shù)據(jù)一致性,后面我們會講到這種缺陷如何彌補。美中不足的是目前的智能合約并不支持 SQL 語法。

    數(shù)據(jù)安全:用業(yè)務(wù)手段達成妥協(xié)

    交易數(shù)據(jù)是透明的,但不是全部透明,而是相對透明,這是區(qū)塊鏈技術(shù)的一個難點,關(guān)鍵有二:(1)如何保護隱私,僅僅能看到自己可見的數(shù)據(jù);(2)密鑰分配問題,例如新加入鏈中的一個節(jié)點會被分配一個新的密鑰,如何用這個密鑰解讀以前鏈中存儲的信息??梢娕c不可見,這是一個矛盾,理論上沒有一個完美的方案,這里我不對區(qū)塊鏈技術(shù)如何加密、如何做密鑰管理、如何同態(tài)加密等方式做解讀,而是講講如何通過業(yè)務(wù)方法而不是技術(shù)手段規(guī)避這一問題。舉個例子,在一個小企業(yè)支付的聯(lián)盟鏈中,核心企業(yè)包括某銀行、企業(yè)A,為A的上下游企業(yè)提供信貸業(yè)務(wù),對于所有交易的數(shù)據(jù),銀行和核心企業(yè)A都是可見的,他們擁有記賬節(jié)點,對于其他加盟企業(yè),只擁有非記賬節(jié)點,他們雖然也有全部的數(shù)據(jù),但是只能看到自己相關(guān)的數(shù)據(jù)。很明顯,加盟企業(yè)放棄了自己的部分隱私權(quán),但也得到了生意的機會,這種方式加盟企業(yè)是可以接受的,就好比貸款企業(yè)要向銀行提供經(jīng)營數(shù)據(jù)一樣。數(shù)據(jù)安全問題,在技術(shù)上很難解決,但通過業(yè)務(wù)手段是可以規(guī)避的,這也是我們看好聯(lián)盟鏈的重要原因。

    為分布式應(yīng)用而生的微服務(wù),與區(qū)塊鏈技術(shù)是天生一對

    最后說說區(qū)塊鏈技術(shù)與微服務(wù)架構(gòu)的關(guān)系。大家知道,微服務(wù)架構(gòu)是一個分布式的應(yīng)用技術(shù)架構(gòu),目的是有效的對應(yīng)用進行拆分,實現(xiàn)敏捷開發(fā)、快速演化、便捷容錯與彈性伸縮。

    微服務(wù)的一個核心概念是API網(wǎng)關(guān),由于服務(wù)的顆粒變細,網(wǎng)關(guān)承擔著安全與訪問認證等諸多職能。而在現(xiàn)有的大多數(shù)微服務(wù)架構(gòu)中,大家都更多的在談接入網(wǎng)關(guān)的概念,實際上按照信息的流向,除接入網(wǎng)關(guān)外,微服務(wù)還應(yīng)該有接出網(wǎng)關(guān)的概念。

    前面說到,區(qū)塊鏈技術(shù)本質(zhì)上就是分布式數(shù)據(jù)庫,微服務(wù)架構(gòu)與區(qū)塊鏈技術(shù)的結(jié)合,并不能簡單的看成是微服務(wù)與數(shù)據(jù)庫的結(jié)合,而應(yīng)該把區(qū)塊鏈平臺做為一個第三方應(yīng)用進行交互,這也是微服務(wù)架構(gòu)很好發(fā)揮作用的地方。上圖中紅圈所示的就是微服務(wù)與區(qū)塊鏈平臺進行交互的方式。而微服務(wù)的接出網(wǎng)關(guān),就應(yīng)該起到區(qū)塊鏈網(wǎng)關(guān)的作用。

    雖然目前的區(qū)塊鏈平臺一般都有SDK和REST服務(wù)兩種方式,按照上述的原則,一般不要使用 SDK,而是遠程調(diào)用方式,采用微服務(wù)的設(shè)計原則,使用區(qū)塊鏈網(wǎng)關(guān),把微服務(wù)與區(qū)塊鏈平臺集成的功能集中到網(wǎng)關(guān)中,見下圖:

    微服務(wù)通過區(qū)塊鏈網(wǎng)關(guān)與區(qū)塊鏈平臺交互,區(qū)塊鏈網(wǎng)關(guān)主要功能包括通訊網(wǎng)關(guān)、事件監(jiān)聽,同時配合微服務(wù)應(yīng)用框架,完成數(shù)據(jù)一致性、對賬功能。與區(qū)塊鏈網(wǎng)關(guān)集成的能力,是微服務(wù)架構(gòu)天生具備的。所以我們說微服務(wù)與區(qū)塊鏈,天生是一對。

    通訊網(wǎng)關(guān):處理微服務(wù)發(fā)起的對區(qū)塊鏈平臺的調(diào)用

    由于區(qū)塊鏈平臺的服務(wù)能力(每秒交易數(shù) TPS)有限,為保證區(qū)塊鏈平臺的可用性,區(qū)塊鏈網(wǎng)關(guān)采用了異步處理模式,實現(xiàn)限流、隔離、服務(wù)升降級等能力。

    網(wǎng)關(guān)在微服務(wù)應(yīng)用與區(qū)塊鏈平臺之間建立了隔離,避免平臺與微服務(wù)之間互相影響,這是一種 MiddleBox 的集成方式,用一個獨立的基礎(chǔ)設(shè)施做集成。微服務(wù)之間的集成往往采用 MiddlePipe 的模式,但是區(qū)塊鏈平臺做為一個第三方應(yīng)用,采用 MiddleBox 方式比較好,統(tǒng)一管理與運維比較方便。

    由于區(qū)塊鏈平臺提供的接口各有不同,區(qū)塊鏈網(wǎng)關(guān)在接受請求后記錄交易流水,把區(qū)塊鏈平臺提供的服務(wù)模擬為冪等服務(wù),調(diào)用者可以多次調(diào)用區(qū)塊鏈網(wǎng)關(guān),而區(qū)塊鏈網(wǎng)關(guān)僅僅調(diào)用區(qū)塊鏈平臺一次。為方便運維,我們可以為區(qū)塊鏈平臺提供的服務(wù)定義SLA,根據(jù)這些定義靈活的進行調(diào)用的控制。

    區(qū)塊鏈網(wǎng)關(guān)的內(nèi)部實現(xiàn)是一個 SEDA 架構(gòu)(分階段事件驅(qū)動架構(gòu)),把接入、接出和處理分開(處理主要是記錄流水、報文打解包、安全效驗等功能),三階段之間用隊列連接,采用異步模擬同步的方式,這是一個用于集成的基礎(chǔ)架構(gòu)。

    接入、處理、接出三個階段可處理資源是可以調(diào)配的,資源主要包括處理線程和接入接出的連接,根據(jù)不同業(yè)務(wù)可以有不同的資源為之服務(wù),這樣升降級、限流等特性就比較容易實現(xiàn)。

    為了方便運維,需要對業(yè)務(wù)有分組的能力,可以根據(jù)分組進行批量的運維管理。

    事件監(jiān)聽:Hook與輪詢模式

    如果記賬簿發(fā)生了改變,如何通知微服務(wù)呢,這就是區(qū)塊鏈網(wǎng)關(guān)中事件監(jiān)聽發(fā)揮的作用。目前很多區(qū)塊鏈平臺并沒有提供事件接口,即使未來有也很難統(tǒng)一,前面也說過,智能合約運行在沙箱中,為保證數(shù)據(jù)一致性不可能支持對外部服務(wù)的調(diào)用,也不能做為事件監(jiān)聽的回調(diào),這樣就需要在區(qū)塊鏈網(wǎng)關(guān)中進行處理。

    微服務(wù)可以注冊對某一類交易進行監(jiān)聽,區(qū)塊鏈網(wǎng)關(guān)定時通過區(qū)塊鏈平臺的查詢接口檢索,發(fā)現(xiàn)數(shù)據(jù)變更時通知微服務(wù)。這是一個效率不高的方法,但區(qū)塊鏈平臺本身性能也不高,時延主要由共識機制造成,輪詢的做法并不會有太大影響,這也是期待區(qū)塊鏈平臺本身提升的地方。

    數(shù)據(jù)一致性:可靠事件模式是首選

    不能把所有數(shù)據(jù)都存儲在區(qū)塊鏈平臺中,而是將交易數(shù)據(jù)存儲在區(qū)塊鏈平臺,這樣就有了本地數(shù)據(jù)庫的數(shù)據(jù)與區(qū)塊鏈交易數(shù)據(jù)的一致性問題。

    一般來說,我們不能依賴區(qū)塊鏈平臺支持事務(wù)的回滾,因為這個分布式的記賬簿一旦記賬就是不可更改的,我們甚至不能指望區(qū)塊鏈平臺實時給應(yīng)用反饋記賬是否成功,因為有可能返回超時錯誤,不清楚是否記賬成功。于是,區(qū)塊鏈網(wǎng)關(guān)需要和微服務(wù)配合保證數(shù)據(jù)的一致性。

    一般情況下微服務(wù)中的業(yè)務(wù)處理采用異步模式,發(fā)出記賬申請后處于等待狀態(tài),區(qū)塊鏈網(wǎng)關(guān)將記賬申請轉(zhuǎn)發(fā)給區(qū)塊鏈平臺。如果區(qū)塊鏈平臺返回接受Accept或者拒絕Reject,將結(jié)果通知微服務(wù);如果區(qū)塊鏈平臺返回超時或者不可確定錯誤,即開始定時輪詢,得到結(jié)果后通知微服務(wù)。同時,微服務(wù)本身需要具備事務(wù)補償?shù)哪J?#xff0c;如果記賬失敗進行反交易處理。這種數(shù)據(jù)一致性處理的方式,是微服務(wù)多種處理方式中的一種,我們一般使用服務(wù)編排的方式降低這種模式的開發(fā)復雜度。

    下面是一個示例:

    這是一個可靠事件與區(qū)塊鏈交互的流程:

    1)應(yīng)用框架接到請求后首先記錄業(yè)務(wù)流水,然后執(zhí)行業(yè)務(wù)邏輯,記錄業(yè)務(wù)數(shù)據(jù),最后在事件表中留下對區(qū)塊鏈平臺調(diào)用的記錄,事務(wù)完成?
    2)事件處理輪詢事件記錄,有更新時通過區(qū)塊鏈網(wǎng)關(guān)調(diào)用區(qū)塊鏈平臺,如果調(diào)用成功,改變事件狀態(tài),如果失敗就要調(diào)用業(yè)務(wù)補償?shù)臋C制了。

    對賬

    既然數(shù)據(jù)有本地存放,也有區(qū)塊鏈平臺存放,就有不一致的可能,就必須對賬。傳統(tǒng)對賬有以我為主、以他為主兩種模式。這里就只能以他為主,以區(qū)塊鏈平臺為主了。由于區(qū)塊鏈技術(shù)針對交易的特點對存儲結(jié)構(gòu)進行了要求,利用已有的時間戳、交易先后次序,可以是對賬變得更加容易。

    基本的對賬處理流程如下

  • 區(qū)塊鏈平臺和企業(yè)應(yīng)用的記錄必須有關(guān)聯(lián)的id(可以是多要素的組合)
  • 區(qū)塊鏈平臺和企業(yè)應(yīng)用都要保證生成的對賬文件明細記錄的連續(xù)性
  • 對于“隔日賬”需重復核對
  • 結(jié)語

    區(qū)塊鏈是一種新興的技術(shù),他的本質(zhì)是一種加入業(yè)務(wù)特性的分布式數(shù)據(jù)庫,通過對區(qū)塊鏈技術(shù)的研究,我們找到了業(yè)務(wù)與區(qū)塊鏈技術(shù)結(jié)合的方式,提出了微服務(wù)應(yīng)用架構(gòu)集成區(qū)塊鏈的技術(shù)模式。

    1、區(qū)塊鏈的業(yè)務(wù)價值是通過數(shù)據(jù)共享降低信任成本。

    區(qū)塊鏈建立了一個記賬簿,每個參與方在交易中都通過這個記賬簿進行交互,保證每一筆發(fā)生的交易一定被可靠的記錄下來并不可篡改,不必再反復確認,不必擔心技術(shù)問題導致的業(yè)務(wù)流程變更,不必做應(yīng)急系統(tǒng),從而降低了信任成本。

    2、區(qū)塊鏈技術(shù)的本質(zhì)是分布式數(shù)據(jù)庫。

    區(qū)塊鏈技術(shù)的數(shù)據(jù)共享方式要滿足(1)多副本、(2)可靠記錄、(3)不可篡改、(4)多方透明幾個特性,總結(jié)下來,區(qū)塊鏈技術(shù)對應(yīng)用而言,就是一個分布式數(shù)據(jù)庫,分別對應(yīng)分布式數(shù)據(jù)庫的(1)分布式存儲、(2)點對點可靠傳輸、(3)存儲過程與(4)數(shù)據(jù)安全幾個方面。

    3、為分布式應(yīng)用而生的微服務(wù),與區(qū)塊鏈技術(shù)是天生的一對。

    微服務(wù)通過區(qū)塊鏈網(wǎng)關(guān)與區(qū)塊鏈平臺交互,區(qū)塊鏈網(wǎng)關(guān)主要功能包括通訊網(wǎng)關(guān)、事件監(jiān)聽,同時配合微服務(wù)應(yīng)用框架,完成數(shù)據(jù)一致性、對賬功能。與區(qū)塊鏈網(wǎng)關(guān)集成的能力,是微服務(wù)架構(gòu)天生具備的。

    以上是對我們研究成果一個簡要介紹,后續(xù)我們還會對使用區(qū)塊鏈技術(shù)的細節(jié)進行分析,與大家共同探討。

    附記:理解區(qū)塊鏈技術(shù)常見的幾個困惑

    從剛剛接觸區(qū)塊鏈技術(shù)的一頭霧水,到概念的逐步清晰,再到區(qū)塊鏈應(yīng)用的研發(fā),經(jīng)歷很多困惑,這里列出幾個常見的困惑:

    困惑1:比特幣是區(qū)塊鏈技術(shù)的一個應(yīng)用,不能把比特幣應(yīng)用的所有內(nèi)容都歸結(jié)為區(qū)塊鏈技術(shù)

    上文提到,區(qū)塊鏈技術(shù)從比特幣中獨立出來是 2014 年左右的事情,此前每每舉出區(qū)塊鏈的案例都是比特幣,給區(qū)塊鏈技術(shù)的應(yīng)用造成了很多誤解。我建議先了解區(qū)塊鏈技術(shù),再了解比特幣,先理解聯(lián)盟鏈的業(yè)務(wù)場景,再了解公有鏈的業(yè)務(wù)場景,公有鏈看作是聯(lián)盟鏈的一種大規(guī)模延展,,可以少走一些彎路。

    困惑2:公有鏈情況下數(shù)據(jù)存儲性能不高,但聯(lián)盟鏈的性能可以遠高于公有鏈,能滿足多數(shù)場景的要求

    數(shù)據(jù)一致性問題是分布式存儲最大的問題,而并發(fā)越高,沖突的概率就越大。區(qū)塊鏈技術(shù)之所以能支持的每秒交易數(shù)(TPS)不高,主要是共識機制比較復雜,或者說共識機制就是刻意為了降低并發(fā)性,減少數(shù)據(jù)沖突的概率。在公有鏈上,這是一個無法逾越的問題,只能從事實時性要求不敏感的業(yè)務(wù)。但是,在聯(lián)盟鏈中,由于鏈中的參與方并不多,也不需要每個節(jié)點都記賬,就可以使用一些性能更高的共識機制,例如前面說的PBFT。我們曾經(jīng)嘗試過一種全對等的算法,可以支持更高的性能。

    困惑3:應(yīng)用區(qū)塊鏈技術(shù)不一定必須有礦工來挖礦

    初次接觸區(qū)塊鏈技術(shù),礦工/挖礦這個概念讓人非常費解:(1)為什么一定要挖礦?(2)為什么要給記賬成功的節(jié)點獎勵比特幣來鼓勵記賬?(3)非比特幣的業(yè)務(wù)中如何鼓勵記賬?這個困惑歸根結(jié)底還是把區(qū)塊鏈和比特幣混淆造成的。前面說過,挖礦是通過工作量證明(POW)達成共識的機制,挖礦能力愈強就取得了記錄權(quán)。更重要的是比特幣的貨幣屬性,發(fā)行貨幣要么靠國家信用(例如紙幣),要么靠奇缺資源(例如黃金),比特幣為了防止濫發(fā),就需要用算力做為一種奇缺資源。這樣說來,比特幣實際上把共識算法、貨幣屬性、鼓勵記賬這幾件事都用挖礦來解決了,思路確實精妙。但是,在業(yè)務(wù)規(guī)則不同的聯(lián)盟鏈中就不一樣了,除了有其他更高效的共識算法外,不需要奇缺資源,不需要專門對記賬做鼓勵,因為必須記賬已經(jīng)是核心企業(yè)之間的契約,可以通過技術(shù)手段保證數(shù)據(jù)的同步,支持審計等能力,自然就不需要挖礦了。

    困惑4:目前應(yīng)用區(qū)塊鏈技術(shù)不是去中心,而是多中心

    去中心是一個理想,經(jīng)常有人問(1)為什么要去中心?去中心有什么好處?(2)真的能去中心嗎?后來,我深入研究聯(lián)盟鏈的場景時發(fā)現(xiàn),實際的業(yè)務(wù)場景大多是多中心(這又是比特幣惹的禍,他真的想去中心),例如上述的企業(yè)聯(lián)盟方式,幾個建立聯(lián)盟的核心企業(yè)就是多中心,他們共同成為一個新的中心。傳統(tǒng)方式建立新的中心,往往通過建立清算機構(gòu)的方式,而區(qū)塊鏈技術(shù)讓建立中心的成本降低了。

    困惑5:不是所有的區(qū)塊鏈節(jié)點都是記賬節(jié)點,很多節(jié)點僅僅用來進行數(shù)據(jù)同步而已

    多中心就意味著不是每個節(jié)點都需要記賬,記賬的工作由幾個中心節(jié)點負責就可以了,其他節(jié)點與記賬節(jié)點間是數(shù)據(jù)同步的關(guān)系,也就是非記賬節(jié)點上也有全部數(shù)據(jù)。聯(lián)盟鏈中非記賬節(jié)點一般處在加盟企業(yè),由于數(shù)據(jù)可見性的要求,非記賬節(jié)點中的數(shù)據(jù)并不是都可見的,但是這一副本可以做為一種法律依據(jù),提高了篡改數(shù)據(jù)的成本。

    從數(shù)據(jù)的角度來看,區(qū)塊鏈本質(zhì)是一種分布式數(shù)據(jù)庫,這里的“分布式”是指區(qū)塊鏈技術(shù)利用鏈式存儲結(jié)構(gòu)不僅解決了分布式數(shù)據(jù)存儲問題,也解決了存儲時的分布式一致性問題。區(qū)塊鏈技術(shù)利用分布式記賬簿保證數(shù)據(jù)可靠傳輸和訪問,利用可自動執(zhí)行的智能合約來編程和操作數(shù)據(jù)。所以,我認為,基于分布式數(shù)據(jù)庫來理解區(qū)塊鏈,認清區(qū)塊鏈技術(shù)常見的一些困惑和誤區(qū),可以讓大家對區(qū)塊鏈有個比較正確的理解方式。

    總結(jié)

    以上是生活随笔為你收集整理的当微服务撞上区块链的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

    国产成人精品999在线观看 | 国产精品理论片 | 免费日韩视 | 96视频在线 | 国产精品一区二区三区在线看 | 99免费在线视频 | 99激情网 | 国产精品久久久久久久午夜 | 中文字幕永久 | 一性一交视频 | www免费在线观看 | 91久久偷偷做嫩草影院 | 91福利社区在线观看 | 中文字幕色婷婷在线视频 | 国产亚洲成av片在线观看 | 欧美色图另类 | 久久成人免费 | 日韩电影在线视频 | 奇米四色影狠狠爱7777 | 久草在线免费看视频 | 丁香婷婷色综合亚洲电影 | 国产精品久久久久久久久久久免费 | 色综合久久久久久久 | 国产成人一区二区三区 | 狠狠的操狠狠的干 | 又黄又刺激的视频 | 久久草在线免费 | 欧美日韩高清一区二区 | 亚洲综合色网站 | 天天干婷婷 | 亚洲一级片在线看 | 就色干综合 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 国产精品理论片在线观看 | 日韩欧美网站 | 色黄视频免费观看 | 在线观看av网站 | 亚洲国产欧美一区二区三区丁香婷 | 四虎在线免费观看视频 | 成人免费91 | 91香蕉嫩草 | 欧美精品一区二区在线观看 | 久草久草视频 | 在线看国产日韩 | 久久精品视频观看 | 国产一区二区三区黄 | www色婷婷com| 天天爱天天操天天干 | 麻花天美星空视频 | 久久久久久蜜av免费网站 | 一区二区三区 中文字幕 | 伊色综合久久之综合久久 | 偷拍区另类综合在线 | 欧美一区二区在线 | 91免费看黄色| 韩国视频一区二区三区 | 亚洲欧美激情插 | 在线视频日韩精品 | 91视频麻豆 | 中文在线天堂资源 | 狠狠色丁香婷婷 | 成人av在线网址 | 日韩电影一区二区在线观看 | 九九在线免费视频 | 丁香婷婷深情五月亚洲 | 久久国产精品免费观看 | 欧美性色综合 | 国产一级特黄电影 | 久久国色夜色精品国产 | 精品久久久久久亚洲 | 免费午夜在线视频 | 亚洲精品视频在线播放 | 最近中文字幕mv免费高清在线 | 日韩网站免费观看 | 国产91精品高清一区二区三区 | 91久久国产自产拍夜夜嗨 | 91精品免费在线 | 免费三级a| 91成品人影院 | 天堂网在线视频 | 四虎成人精品 | 夜夜操狠狠干 | 国产久视频 | 国产精品久久久久久久久久99 | 夜夜骑日日| 五月婷婷国产 | 亚洲国产精品va在线 | 国产精品久久久久久婷婷天堂 | 中文字幕在线观看视频一区二区三区 | 97福利 | 亚洲欧美视频在线 | 久久久久久久久久久黄色 | 日本黄色免费播放 | 免费电影播放 | 91看片看淫黄大片 | 久久久久久久久久久久av | 精品视频在线看 | 黄色毛片大全 | 欧美日韩亚洲在线 | 在线观看亚洲专区 | 日韩激情影院 | 麻豆传媒电影在线观看 | 这里只有精品视频在线观看 | 国产高清在线永久 | 天堂av官网 | 午夜精品一区二区三区在线观看 | 亚洲国产无 | 在线亚洲日本 | 久久久久在线观看 | 亚洲精品一区二区三区高潮 | 四虎影视成人精品国库在线观看 | 久久网址| 国产精品国产三级在线专区 | 精品一区二区久久久久久久网站 | 中文永久免费观看 | 成年人看片| 日韩视频1| 最新国产在线视频 | 精品美女久久久久久免费 | 国产视频 久久久 | 香蕉视频在线视频 | 欧美一级艳片视频免费观看 | 高潮久久久久久 | 天天操夜夜操天天射 | 天天操天天干天天操天天干 | 精品久久久久久久久久久院品网 | 91在线中文| 亚洲欧美日韩国产精品一区午夜 | 日日夜夜干 | 最新真实国产在线视频 | 免费久久久久久 | www.色的| 中文字幕在线观看免费 | 中文字幕电影高清在线观看 | 国产 欧美 在线 | 狠狠色狠狠综合久久 | 国产视频日韩 | 五月婷婷中文网 | 欧美极品在线播放 | 久久人人爽人人 | 国产精品欧美久久久久天天影视 | 欧美一区二区日韩一区二区 | 麻豆国产精品va在线观看不卡 | 精品久久久久久国产偷窥 | 91av免费观看 | 成年人av在线播放 | 婷婷www| 69av在线视频 | 久久久久久久久久久久久影院 | 国产一区二区三区免费在线观看 | 97视频在线观看视频免费视频 | 在线免费观看黄色 | 黄色片免费电影 | 五月婷婷在线观看视频 | 99热 精品在线 | 久久久高清视频 | 视频在线观看日韩 | 亚洲春色奇米影视 | 在线观看911视频 | 丁香婷婷深情五月亚洲 | 欧美色综合久久 | 亚洲手机av | 二区三区视频 | 国产精品久久久久免费观看 | 国产精品对白一区二区三区 | 国产精品丝袜久久久久久久不卡 | 973理论片235影院9 | 国产精品美女在线观看 | 国语麻豆 | 狠狠狠色丁香婷婷综合激情 | 成年人黄色av | 久久久久久久久久网 | 亚洲一区日韩 | 2022国产精品视频 | 夜夜骑日日 | 黄网站污 | 在线激情影院一区 | 免费一级片在线 | 18岁免费看片 | 成人久久影院 | 高清久久久 | 成人av亚洲 | 国产伦精品一区二区三区无广告 | 欧美成亚洲 | 亚洲成人中文在线 | 夜夜躁狠狠燥 | 久久免视频 | 精品你懂的 | 精品久久九九 | 一区二区三区电影 | 精品一区91 | 精品国产伦一区二区三区 | 国产污视频在线观看 | 中文在线8资源库 | 成人91视频 | 国产在线精品一区二区不卡了 | 久久丁香网 | 日日精品 | 亚洲精品白浆高清久久久久久 | 99久久婷婷国产一区二区三区 | 在线激情小视频 | 奇米四色影狠狠爱7777 | 日韩理论电影在线观看 | 精品不卡视频 | 国产麻豆精品免费视频 | 色偷偷av男人天堂 | 在线日韩精品视频 | 亚洲精品国产精品国自 | 开心激情五月网 | 最新av电影网站 | 一级全黄毛片 | 成人免费视频播放 | 超碰在线网 | 在线观看国产www | 日本久久免费电影 | 中文字幕日韩国产 | 玖玖在线精品 | 中文av在线播放 | 亚洲一级黄色 | 久久久精品免费观看 | 91一区二区三区久久久久国产乱 | 国产一级精品在线观看 | 国产精品二区在线观看 | 五月天婷婷视频 | 国产精品乱码一区二三区 | 久久这里精品视频 | 91成年人在线观看 | 在线观看免费视频你懂的 | 日狠狠 | 中文一区在线观看 | 久久公开免费视频 | 色99色 | 成人影片在线免费观看 | 婷婷色狠狠 | 99热精品国产 | 欧美日韩在线免费观看视频 | 久久99在线| 国内视频在线观看 | 97色在线视频 | 超碰在线观看av | 成人理论在线观看 | 丁香影院在线 | 麻豆视频在线免费 | 久久最新视频 | 亚洲精品乱码久久久久v最新版 | 免费网站观看www在线观看 | 91亚洲欧美 | 91麻豆精品国产91久久久无限制版 | 日韩av进入 | 久久国产精品偷 | 中文字幕精品一区 | av看片在线观看 | 亚洲精品久久久久999中文字幕 | 色av资源网 | 亚洲日本成人网 | 国产色婷婷 | 国产精品99久久久久人中文网介绍 | 超碰成人av| 99九九热只有国产精品 | 欧美 日韩 视频 | 一区二区久久久久 | 亚洲综合日韩在线 | 天天摸天天舔 | 免费午夜网站 | 日韩av在线小说 | 丁香五婷| adn—256中文在线观看 | 人人爽人人插 | 色综合在 | 天天看天天干天天操 | 精品99久久 | 国产精品一区二区久久精品 | 久久一精品 | av在线成人 | 精品免费久久久久久 | 国产精品久久久久久久久久白浆 | 天天撸夜夜操 | av中文字幕在线免费观看 | 国产一区在线视频 | 国产精品久久久久永久免费 | 国产精品嫩草在线 | 欧洲成人av | 中文字幕在线观看亚洲 | 欧美孕交vivoestv另类 | 欧美日韩成人一区 | 三级黄色片在线观看 | 色噜噜噜噜 | 丝袜+亚洲+另类+欧美+变态 | 久草在线视频在线 | 日本在线观看中文字幕无线观看 | 日韩精品不卡在线 | 欧美日韩在线视频免费 | 4438全国亚洲精品观看视频 | 欧美一级片免费播放 | 国外成人在线视频网站 | 狠狠的操你 | 99视频精品全国免费 | 日本黄网站 | 手机在线观看国产精品 | 亚洲欧洲在线视频 | 欧美有色 | 麻豆视频免费入口 | 欧美一级xxxx | 国产成人精品久久久久 | 欧洲精品视频一区 | 国产精品18久久久久白浆 | 免费男女羞羞的视频网站中文字幕 | 欧美日韩国产在线观看 | 九九天堂 | 精品99免费视频 | 久久久久久97三级 | 999久久国精品免费观看网站 | 国产精品久久久久久久99 | 综合色伊人 | 4p变态网欧美系列 | 日韩高清成人 | 五月的婷婷 | 精品国产乱码久久久久久浪潮 | 成人一区二区在线观看 | 久草在线中文888 | 最新日韩精品 | 久草线| 九色琪琪久久综合网天天 | 日韩在线高清免费视频 | 开心激情五月网 | 天天躁日日躁狠狠躁 | 久久国产视屏 | 成人久久网 | 久久久久国产一区二区三区四区 | 国产精品嫩草69影院 | 久久伊人婷婷 | 久久久久免费精品国产 | 综合婷婷丁香 | 六月丁香社区 | 天天干天天拍天天操 | 高清美女视频 | 91精品免费在线视频 | 国产精品原创视频 | 色五月成人| 成人国产精品一区 | 成年人在线免费看视频 | 久久久久久久久久久久久国产精品 | 91在线视频观看免费 | 欧美日韩中文字幕在线视频 | 夜夜骑日日 | 欧美色噜噜噜 | 免费的成人av | 91精品国产一区 | 手机在线黄色网址 | 五月天亚洲综合 | 97操碰| 久久久久国产精品午夜一区 | av电影中文字幕 | 91免费的视频在线播放 | 日本三级在线观看中文字 | 成年人在线免费看视频 | 色中色综合 | 精品国产aⅴ一区二区三区 在线直播av | 日批视频 | 操处女逼| 麻花豆传媒mv在线观看 | 天天综合五月天 | 激情欧美丁香 | 五月婷婷色 | 久久国产区 | 亚洲2019精品 | 黄色影院在线免费观看 | 亚洲国产美女精品久久久久∴ | 日韩手机在线 | 日日躁你夜夜躁你av蜜 | 91九色丨porny丨丰满6 | 349k.cc看片app| 免费不卡中文字幕视频 | 久久毛片网站 | 国产精品久久久777 成人手机在线视频 | 色五月激情五月 | 精品女同一区二区三区在线观看 | 成人影音在线 | 久久精品视频在线观看 | 国产免费成人 | 色午夜 | 国产一二区免费视频 | 成人av高清在线观看 | 最新免费av在线 | 亚洲a色 | 久精品视频免费观看2 | 久久成人在线视频 | 国产手机视频在线播放 | 中文字幕精品一区久久久久 | 91| 国产精久久久久久妇女av | 日韩精品免费一区二区三区 | 99久久99久久免费精品蜜臀 | 国产精品1区2区 | 精品视频www | 97电影在线观看 | 欧美最新大片在线看 | av在线电影播放 | 亚洲欧洲视频 | 日韩欧美高清在线观看 | 色婷婷在线视频 | 三级黄色在线观看 | 国产精品一区二区三区在线 | 午夜视频在线瓜伦 | 亚洲人视频在线 | 欧美色综合 | 久久久国产精品成人免费 | 国产淫片 | 日韩一区正在播放 | 91视频-88av | 日韩中文字幕国产精品 | 国产精品2020 | 免费网站黄色 | 狂野欧美激情性xxxx欧美 | 黄www在线观看 | www.香蕉视频 | 国产精品永久久久久久久www | 国产午夜在线 | 99久久精品久久久久久动态片 | 成人av在线看 | 国产一区二区三区免费视频 | 亚洲欧美视频在线播放 | 久久久免费 | 四虎影视av | 97免费中文视频在线观看 | 国产中年夫妇高潮精品视频 | 在线你懂 | 狠狠色丁香婷婷综合久小说久 | 黄色在线观看免费 | 91综合久久一区二区 | 美女精品久久久 | 96av麻豆蜜桃一区二区 | 中文字幕在线网址 | 亚洲精品视频偷拍 | 亚洲性少妇性猛交wwww乱大交 | 中文字幕乱在线伦视频中文字幕乱码在线 | 国产一区国产精品 | 国产精品久久久视频 | 亚洲高清视频在线观看免费 | 色综合久久久久综合体 | 日日干视频 | 国产一区二区不卡视频 | 午夜电影一区 | 色久五月 | www.91成人 | 91精品色 | 欧美精品亚洲精品日韩精品 | 精品国产一区二区三区久久久蜜月 | 在线免费视| 国产三级精品三级在线观看 | 91色蜜桃 | 在线观看黄色免费视频 | 在线观看第一页 | 99久久精品国产免费看不卡 | 三上悠亚一区二区在线观看 | 男女啪啪免费网站 | 韩国av三级 | 午夜视频在线网站 | 蜜臀av性久久久久av蜜臀妖精 | 99久久婷婷国产精品综合 | 九九九电影免费看 | 97超碰在线久草超碰在线观看 | 综合网中文字幕 | 免费看黄在线网站 | 国产精品久久久免费看 | 精品国产乱码久久久久久1区二区 | 成年人免费av网站 | 亚洲一级电影 | 999精品 | 夜夜躁日日躁狠狠躁 | 欧美精品久久久久久久久久白贞 | 免费成人结看片 | 精产嫩模国品一二三区 | 亚洲精品久久久久久中文传媒 | 亚洲 综合 国产 精品 | 91亚洲国产成人久久精品网站 | 国产日韩精品在线观看 | 久久久久国产一区二区 | 久久国产日韩 | 中文视频一区二区 | 精品三级av | 国产视频日韩视频欧美视频 | 视频在线观看入口黄最新永久免费国产 | 日韩在线观看电影 | 亚洲综合激情网 | 久久一线 | 精品主播网红福利资源观看 | 日日操天天爽 | 日本精品视频免费 | 久久99精品一区二区三区三区 | 亚洲欧美经典 | 久久久国产一区二区三区四区小说 | 久久精品99视频 | 久草在线官网 | 精品视频专区 | av在线看片 | av电影一区二区三区 | 精品影院| 久久免费播放视频 | 999国内精品永久免费视频 | 成人试看120秒 | 日韩在线小视频 | 天天曰天天爽 | 视频在线观看亚洲 | 亚洲精品久久久久久中文传媒 | 国产99久久久精品 | 国产破处视频在线播放 | 在线观看黄色 | 亚洲综合视频在线播放 | 在线播放视频一区 | 91精品久久香蕉国产线看观看 | 黄色网址国产 | 婷婷精品在线 | 日韩在线视频免费看 | 在线国产日韩 | 超碰999| 欧美午夜精品久久久久 | 中文字幕人成乱码在线观看 | 久色网| 国产精品久久久久久久久久久杏吧 | 国产精品久久久影视 | 欧美在线观看禁18 | 国产精品一区二区三区久久 | 日韩高清片 | 久久狠狠婷婷 | 外国av网| 国产成人一区二区啪在线观看 | 国产成人av电影在线观看 | 久久久久综合 | 99国产视频在线 | 成人国产网站 | 国产免费黄色 | 全黄网站| 国产成人高清av | 亚洲精品乱码白浆高清久久久久久 | 五月婷综合网 | 亚洲人成网站精品片在线观看 | 亚洲精品日韩av | 91一区二区三区在线观看 | 91av在线免费视频 | 国产精品一区二区吃奶在线观看 | 免费在线观看av | 亚洲精品国产综合99久久夜夜嗨 | 在线免费观看黄色大片 | 色吊丝在线永久观看最新版本 | jizz18欧美18 | 久久免费福利视频 | 91免费在线 | 久久久高清免费视频 | 99热这里只有精品久久 | 久久久久久99精品 | 毛片永久免费 | 麻豆视频入口 | 国产123av| 久久精品久久久久久久 | 99久久精品免费看国产一区二区三区 | 性色va| 国产最顶级的黄色片在线免费观看 | 日韩精品在线看 | 亚洲视频免费在线看 | 久久激情小视频 | 欧美日韩一级在线 | 日日夜夜精品视频 | 免费在线观看一级片 | 99精品国产一区二区三区不卡 | 五月天婷婷狠狠 | 国产一级免费观看视频 | 97国产在线| 日韩一级电影在线观看 | 成人免费在线电影 | 国产欧美日韩精品一区二区免费 | 五月开心网 | 日韩av影视在线观看 | 亚洲精品影院在线观看 | 国产精品激情在线观看 | 最新中文字幕在线播放 | 亚洲欧美精品在线 | 久久不卡免费视频 | 精品无人国产偷自产在线 | 欧美日韩高清在线 | 操久 | 国产黄色精品视频 | 亚洲乱码在线 | 人人澡人人添人人爽一区二区 | 亚洲精品18日本一区app | 久久草av| 国产精品18p | 五月综合在线观看 | 中文字幕第一页在线视频 | 欧美在线aa | 国内精品久久久久久久久久 | 九九视频在线 | 99人久久精品视频最新地址 | wwwwww国产 | www.日本色| 热热热热热色 | 中文av字幕在线观看 | 色综合天天射 | 精品国产一区二区三区日日嗨 | 黄色国产高清 | 日韩毛片久久久 | 亚洲综合导航 | 九九热视频在线免费观看 | 狠狠干电影 | 丁香五香天综合情 | 国产日韩欧美在线免费观看 | 国产精品99久久99久久久二8 | 欧洲精品二区 | 黄色网址中文字幕 | av女优中文字幕在线观看 | 日av免费| 久操中文字幕在线观看 | 色七七亚洲影院 | 人人狠狠 | 99综合视频 | 成人a大片 | 91一区二区三区久久久久国产乱 | 久久久久黄 | 黄色免费看片网站 | 成人免费视频网址 | 男女免费av| 国产一级片毛片 | 国产精品久久久久久久久久久久久久 | 国产区欧美| 啪啪激情网| 久久视频这里只有精品 | 亚洲国产精品久久久久婷婷884 | 97日日 | 91精品麻豆 | 久99久精品视频免费观看 | 97av影院 | 国产精品第一页在线观看 | 碰超人人 | 丰满少妇久久久 | 国产中文字幕91 | 亚洲作爱视频 | 手机av网站 | 免费看的黄网站 | 在线观看视频h | 欧美日韩不卡在线观看 | 嫩草av在线 | ,午夜性刺激免费看视频 | 成人av免费看 | 亚洲精品在线免费 | 成 人 黄 色 片 在线播放 | 亚洲国产欧美一区二区三区丁香婷 | 亚洲精品456在线播放第一页 | 亚洲成人一二三 | 中文字幕在线免费观看视频 | 在线成人av | 五月天激情在线 | 国产精品大尺度 | 日韩一级电影网站 | 午夜精品久久久 | 成人在线免费视频观看 | www九九热 | 伊人中文网| 久久系列 | 色橹橹欧美在线观看视频高清 | 亚洲国产精品人久久电影 | 99欧美精品| 丁香久久| 五月婷婷色综合 | 天堂av高清 | 亚洲精品tv | 91中文字幕网 | 日韩精品一区二区三区中文字幕 | 日本h视频在线观看 | 亚洲二区精品 | 91激情视频在线 | 国产精品ssss在线亚洲 | 午夜天使 | 精品一区二三区 | 久草爱视频 | 成人欧美一区二区三区在线观看 | 在线观看av免费 | 日韩精品一区二区在线 | 欧美国产大片 | 国产99久久九九精品 | 丰满少妇一级片 | 天天插狠狠干 | 久久免费视频8 | 国产不卡一 | 五月婷婷中文字幕 | 97在线免费视频观看 | 最新高清无码专区 | 国产无区一区二区三麻豆 | 色婷婷狠狠五月综合天色拍 | 久草五月 | 免费国产黄线在线观看视频 | 久久精品视频播放 | 欧美色图亚洲图片 | 欧美日韩在线免费观看视频 | 成人在线观看免费 | 婷婷激情小说网 | 国产成人一区二区三区电影 | 国产福利一区在线观看 | 久久午夜精品 | 午夜91视频| 丰满少妇久久久 | 夜夜躁日日躁狠狠久久av | 美女精品网站 | 国产精品aⅴ | 日韩精品免费在线播放 | 激情电影影院 | 在线黄色国产 | 开心激情五月婷婷 | 天天综合网 天天 | 69av视频在线 | 中文字幕在线视频精品 | 激情片av| 西西大胆啪啪 | 四虎永久免费在线观看 | 亚洲综合黄色 | 亚洲精品久久久久久久蜜桃 | 精品久操 | 婷婷在线网站 | 92精品国产成人观看免费 | 婷婷色综合色 | www.日韩免费 | 中文字幕人成不卡一区 | 日韩xxxxxxxxx| 大型av综合网站 | 欧美日韩在线视频一区 | 国产成人三级一区二区在线观看一 | 久久国产一区二区三区 | 日日夜夜亚洲 | 国产一级片直播 | 成人a免费看 | 免费的黄色的网站 | av在线看片 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 精品久久久久免费极品大片 | 婷婷在线不卡 | 欧美性另类 | 日韩欧美精品一区二区 | 最近最新最好看中文视频 | 久久深夜福利免费观看 | 欧产日产国产69 | 久久综合九色欧美综合狠狠 | 美女网站免费福利视频 | 亚洲国产高清在线观看视频 | 久久中文字幕在线视频 | 日韩电影一区二区在线 | 超碰在线99| 国产精品免费在线播放 | 欧美韩日在线 | 中文字幕成人网 | 狠狠色丁香婷婷综合久久片 | 九九在线精品视频 | 国际精品久久久久 | 国产亚洲日 | 中文字幕亚洲欧美日韩 | 456免费视频 | 国产精品久久久久影视 | 人人模人人爽 | 91网站免费观看 | 97色噜噜| 成人av动漫在线观看 | 麻豆一精品传二传媒短视频 | 国产精品午夜久久久久久99热 | 日日夜夜骑 | 中文字幕超清在线免费 | 色婷婷婷 | 色资源网免费观看视频 | 国产福利在线 | 操操操综合| 国产精品青青 | 天天色官网 | 成人黄色片免费看 | 狠狠网亚洲精品 | 久草资源在线 | 久久久久国产精品一区 | 国产精品精品久久久 | 精品亚洲成a人在线观看 | 久久综合婷婷 | 深夜激情影院 | 成人av在线影院 | 婷婷六月综合亚洲 | 国产精品毛片久久久久久久 | 免费看一级黄色 | 天天操天天操天天 | 国产精品国产三级国产不产一地 | 国产精品99在线播放 | 国产精品视频99 | 黄色大全免费网站 | 国产精品久久久777 成人手机在线视频 | 天天操天天草 | 五月婷婷视频在线 | 久久成人在线 | 99se视频在线观看 | 丁香六月色 | 亚洲精品免费在线视频 | 亚州av成人 | 色综合天天在线 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 啪啪免费观看网站 | 在线免费性生活片 | 成人黄色小说在线观看 | 日本精品视频免费观看 | 色在线高清| 免费一级日韩欧美性大片 | 天天干天天天 | 国产视频一 | 九色91福利 | 亚洲乱亚洲乱妇 | 欧美一级性生活视频 | 国产精品原创在线 | 亚洲国产精品电影 | 久草网免费| 久草精品视频 | 最新免费av在线 | 西西大胆啪啪 | 成人毛片a| 欧美日产一区 | 三级黄免费看 | 美女在线黄 | 日韩免费播放 | 玖玖视频在线 | 国产一区二区在线免费播放 | 九九九九九国产 | 免费一级片在线观看 | 久久久久久毛片精品免费不卡 | 麻豆一二三精选视频 | 欧美在线日韩在线 | www成人精品 | 国产视频一区在线免费观看 | 五月天狠狠操 | 99国产成+人+综合+亚洲 欧美 | 91人人澡人人爽 | 精品视频久久 | 国产精品青草综合久久久久99 | 在线v片免费观看视频 | 亚洲尺码电影av久久 | 正在播放一区二区 | 成人免费观看网站 | 久草在线视频中文 | www.玖玖玖 | www日韩视频 | 一区二区三区国产精品 | 亚洲精品色视频 | 亚洲精品国产第一综合99久久 | 亚洲欧洲精品一区 | 一级黄色片毛片 | 最近中文字幕完整视频高清1 | 精品国产一区二区三区在线 | 国产精品美女免费看 | 综合天天色 | 亚洲综合小说 | 免费中文字幕 | 久久久99精品免费观看app | 在线观看视频在线 | 91麻豆文化传媒在线观看 | 97人人模人人爽人人喊网 | 久久视奸 | 天天操,夜夜操 | 27xxoo无遮挡动态视频 | 一区二区三区动漫 | 日韩国产高清在线 | 97视频在线| 在线观看网站黄 | 日韩欧美专区 | 欧美精品免费在线观看 | 在线观看视频亚洲 | 五月天伊人网 | 国产精品不卡在线观看 | 亚洲第一色| 久久久九色精品国产一区二区三区 | 日日夜夜精品免费 | 色视频网址 | 亚洲视频aaa| 九九视频网 | 亚洲婷婷伊人 | 日韩经典一区二区三区 | 中文字幕久久精品一区 | 中文字幕第一页在线 | 婷婷在线播放 | 成人免费在线播放视频 | 天天色.com| 97视频在线免费观看 | 精品国精品自拍自在线 | 国产在线欧美在线 | 69av久久 | 精品视频久久久 | 久久一级电影 | 国产又粗又猛又黄 | 高清av在线免费观看 | 国产精成人品免费观看 | 91人人视频在线观看 | 国产最新视频在线观看 | 午夜精品在线看 | 免费观看91视频大全 | 欧美精品久久久久 | 一级片黄色片网站 | 国产亚洲精品久久19p | 色综合久久88色综合天天免费 | 中日韩三级视频 | 欧美午夜性生活 | 超碰av免费| 日韩精品无码一区二区三区 | 国产精品免费观看视频 | 国产中文字幕视频在线观看 | 中文av影院| 久久久精品国产免费观看一区二区 | 成人网页在线免费观看 | 亚洲免费视频观看 | 在线日韩视频 | 久久艹艹| 久久综合色播五月 | 玖玖在线资源 | 亚洲日本欧美 | 丁香五婷 | 黄色影院在线免费观看 | 日本精品视频在线播放 | 综合婷婷丁香 | 国产一级片在线播放 | 国产视频在线观看一区二区 | 韩国中文三级 | 久草成人在线 | 天天操狠狠操 | a天堂一码二码专区 | 日本一区二区免费在线观看 | 成人黄色在线 | 中文在线亚洲 | 久久福利剧场 | 免费在线观看黄色网 | 国产福利不卡视频 | 国产精品资源网 | 视频一区在线播放 | 人人躁 | 香蕉在线视频播放网站 | 国产99久久久久久免费看 | 96av麻豆蜜桃一区二区 | 免费开视频| 国产 在线观看 | 91视频最新网址 | 超碰在线人 | 麻豆 free xxxx movies hd| 国产午夜三级一区二区三桃花影视 | 521色香蕉网站在线观看 | 亚洲精品日韩一区二区电影 | 中文字幕亚洲欧美日韩 | v片在线播放 | 国产精品国产三级国产专区53 | 国产小视频网站 | 97色免费视频 | 美女黄频在线观看 | 国产白浆在线观看 | 欧美日韩视频在线观看免费 | 亚洲成人二区 | 天堂在线一区二区 | 在线看成人片 | 99精品国产在热久久下载 | 免费观看www视频 | 久草视频视频在线播放 | 99久久毛片| 韩国一区二区三区视频 | 夜夜视频| 亚洲视频大全 | 精品亚洲一区二区三区 | 国内精品久久久久久中文字幕 | 日韩电影一区二区在线 | 黄色日视频 | 国产精品综合在线 | 97狠狠操 | av丝袜在线| 日韩精品一区二区三区三炮视频 | 精品在线视频一区 | 香蕉97视频观看在线观看 | 手机看国产毛片 | 国产精品av电影 | 国产九九精品 | 五月天久久综合网 | 久久99久久99精品 | 免费中文字幕在线观看 | 国产无套一区二区三区久久 | 中文字幕 国产视频 | www欧美xxxx | 国产精品日韩久久久久 | 国产精品99免视看9 国产精品毛片一区视频 | 天天色天天艹 | 亚洲精品一区二区18漫画 | 狠狠干夜夜 | 五月天婷婷在线观看视频 | 日韩av成人在线 | 国模视频一区二区三区 | 波多野结衣视频一区二区 | 亚洲日本精品视频 | 看黄色91| 国产麻豆精品在线观看 | 网址你懂的在线观看 | 在线观看免费av网 | 精品久久毛片 | 婷婷激情五月综合 | 久久久久久久久久免费视频 | 亚洲国产精品久久久 | 色播六月天| 人人澡人人舔 |