• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    大型互聯(lián)網(wǎng)平臺(tái)微服務(wù)化改造六得

    2017-12-19 15:25:18李忠民齊占新周慶虎
    科技創(chuàng)新與應(yīng)用 2017年35期

    李忠民+齊占新+周慶虎

    摘 要:根據(jù)最近在為某大企業(yè)G做電子商務(wù)平臺(tái)(文章稱其為E系統(tǒng))的微服務(wù)化改造,該平臺(tái)為年交易額數(shù)千億的大型招投標(biāo)交易平臺(tái),擁有供應(yīng)商用戶數(shù)十萬(wàn),采用微服務(wù)架構(gòu),基于G企業(yè)的私有云建設(shè)。G公司原有的E系統(tǒng)(后文簡(jiǎn)稱E1.0)投產(chǎn)比較早,是一個(gè)典型的單體應(yīng)用,當(dāng)初沒(méi)有預(yù)料到會(huì)有這么大的交易量,一直處于小馬拉大車的狀態(tài),且由于架構(gòu)因素導(dǎo)致擴(kuò)展性很差,改進(jìn)困難,故G公司下決心進(jìn)行E系統(tǒng)的徹底改造,而實(shí)施微服務(wù)化改造的新版E系統(tǒng)(后文簡(jiǎn)稱E2.0)則是一個(gè)集云計(jì)算、容器化、微服務(wù)架構(gòu)等技術(shù)于一體的系統(tǒng),這個(gè)轉(zhuǎn)變過(guò)程非常具有代表性,故根據(jù)實(shí)踐經(jīng)驗(yàn)總結(jié)出幾個(gè)原則以供探討。

    關(guān)鍵詞:大型聯(lián)網(wǎng)平臺(tái);微服務(wù)架構(gòu);微服務(wù)化;組件化設(shè)計(jì)

    中圖分類號(hào):F713.36 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):2095-2945(2017)35-0001-06

    1 背景介紹

    E系統(tǒng)是一個(gè)大型招投標(biāo)交易平臺(tái),是G公司的核心應(yīng)用之一,該系統(tǒng)的1.0版本已經(jīng)投入運(yùn)營(yíng)近十年,目前擁有注冊(cè)用戶30余萬(wàn)個(gè),設(shè)計(jì)目標(biāo)是100萬(wàn)用戶。目前該系統(tǒng)年處理采購(gòu)申請(qǐng)80萬(wàn)份,存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù)1.7億份,計(jì)30TB左右。

    該系統(tǒng)有一種典型的應(yīng)用,即大批次招投標(biāo)業(yè)務(wù),其對(duì)性能提出了較高的要求:

    (1)該業(yè)務(wù)要求系統(tǒng)能夠在規(guī)定期限內(nèi)上傳5TB的投標(biāo)文件。

    (2)投標(biāo)文件都是加密、壓縮傳輸,要求在2小時(shí)內(nèi)完成2.4TB數(shù)據(jù)的解密、解壓處理。該交易是E系統(tǒng)的關(guān)鍵應(yīng)用,也是特色應(yīng)用,該交易的設(shè)計(jì)指標(biāo)極大地影響著E系統(tǒng)架構(gòu)設(shè)計(jì)的方方面面,如網(wǎng)絡(luò)入口帶寬、存儲(chǔ)設(shè)備性能、應(yīng)用服務(wù)處理性能、內(nèi)網(wǎng)局域網(wǎng)的帶寬要求等等。

    E1.0版本有幾根本性的問(wèn)題:

    (1)開發(fā)時(shí)間比較早。由于業(yè)務(wù)發(fā)展比較快,當(dāng)初的架構(gòu)已經(jīng)不適應(yīng)如此大業(yè)務(wù)量的需要,長(zhǎng)期處于小馬拉大車的窘境。

    (2)架構(gòu)腐化非常嚴(yán)重。系統(tǒng)呈現(xiàn)一團(tuán)面條狀,改動(dòng)和優(yōu)化非常困難,導(dǎo)致擴(kuò)展性很糟糕。

    (3)業(yè)務(wù)特點(diǎn)決定了在某種特殊投標(biāo)業(yè)務(wù)時(shí),需要在規(guī)定時(shí)間內(nèi)處理非常大量的數(shù)據(jù)(據(jù)測(cè)算達(dá)到5TB之多),故而在這些交易上需要非常高的性能,而平時(shí)這些交易又幾乎沒(méi)有流量,故性能要求高,且波動(dòng)幅度非常大。

    (4)采用集群化部署,資源配置缺乏彈性。

    以上幾個(gè)問(wèn)題正是微服務(wù)架構(gòu)大顯身手之處,故對(duì)于E系統(tǒng)來(lái)說(shuō),實(shí)現(xiàn)微服務(wù)化是正確的舉措。今年正當(dāng)G公司實(shí)施新的IT信息化戰(zhàn)略的第一年,新戰(zhàn)略以私有云建設(shè)為重頭戲,引入一平臺(tái)一系統(tǒng)規(guī)劃理念,E系統(tǒng)作為G公司最大的核心應(yīng)用系統(tǒng)之一,上云發(fā)展、采用分布式架構(gòu)既是公司整體戰(zhàn)略的要求,也是E系統(tǒng)自身的必然選擇,故G公司決定徹底重建E系統(tǒng),重新分析、設(shè)計(jì)、開發(fā)。E2.0系統(tǒng)采用微服務(wù)架構(gòu),實(shí)現(xiàn)單體應(yīng)用向微服務(wù)架構(gòu)的轉(zhuǎn)變,實(shí)現(xiàn)傳統(tǒng)集中式集群化系統(tǒng)向分布式、私有云轉(zhuǎn)變。

    2 E系統(tǒng)微服務(wù)化面臨的困難

    網(wǎng)上有很多對(duì)比單體架構(gòu)和微服務(wù)架構(gòu)的文章,其中不乏對(duì)微服務(wù)頌揚(yáng)有加的激進(jìn)觀點(diǎn),但是當(dāng)面臨一個(gè)真實(shí)的大型應(yīng)用,要真正地操刀微服務(wù)化時(shí),首先要做的是充分考慮到其中的風(fēng)險(xiǎn),個(gè)人認(rèn)為還是要相對(duì)務(wù)實(shí)一些、保守一些,不要被那些純技術(shù)派的觀點(diǎn)誤導(dǎo)。

    在實(shí)施E系統(tǒng)的微服務(wù)化改造中,我們主要面臨幾個(gè)問(wèn)題:

    (1)首先微服務(wù)化引入了復(fù)雜性技術(shù),微服務(wù)架構(gòu)是分布式架構(gòu),凡是分布式架構(gòu)所具有的復(fù)雜性其都具有,而每個(gè)架構(gòu)師都應(yīng)該努力避免引入無(wú)謂的繁雜。

    (2)其次微服務(wù)架構(gòu)只有和云計(jì)算、容器化等一系列技術(shù)結(jié)合使用才能發(fā)揮其效果,這附帶著需要整個(gè)技術(shù)生態(tài)發(fā)生變化。

    (3)微服務(wù)化必然引起設(shè)計(jì)、開發(fā)、測(cè)試、運(yùn)維支持等工作的一系列變化,對(duì)于一個(gè)有著很多成熟應(yīng)用、運(yùn)維技術(shù)已經(jīng)相對(duì)固定的大型企業(yè)來(lái)說(shuō),引起的變化已經(jīng)超出技術(shù)范疇。

    (4)微服務(wù)架構(gòu)引起的一系列技術(shù)路線方面的變化,在一個(gè)有著成熟完善的IT管理制度和規(guī)范戰(zhàn)略的企業(yè)中意味著需要很多突破,需要企業(yè)信息化管理制度方面的許多變革,故而有很多請(qǐng)示、匯報(bào)、研討、論證環(huán)節(jié),產(chǎn)生巨大的協(xié)調(diào)、溝通成本,作為一個(gè)資源有限、工期限制嚴(yán)格的項(xiàng)目,要在時(shí)間、人力資源等方面充分考慮,否則很可能技術(shù)上沒(méi)有問(wèn)題,但是項(xiàng)目反而失敗了。

    故而在對(duì)E1.0系統(tǒng)進(jìn)行微服務(wù)拆分的過(guò)程中,項(xiàng)目組堅(jiān)持了一個(gè)原則:要建設(shè)一個(gè)可用的E系統(tǒng),而不是一個(gè)十分先進(jìn)的E系統(tǒng)。微服務(wù)架構(gòu)是一種手段,我們用它是要解決問(wèn)題的,不能為了微而微。應(yīng)該注意到微服務(wù)架構(gòu)在解決一些問(wèn)題的同時(shí),也不可避免地提高了復(fù)雜性,盲目的微服務(wù)化,片面強(qiáng)調(diào)微服務(wù)的“微”,而忘了為什么要微,會(huì)使得引入的問(wèn)題比解決的問(wèn)題還多,導(dǎo)致項(xiàng)目失敗。

    3 一得:微服務(wù)架構(gòu)本質(zhì)是“解耦”

    首先我認(rèn)為微服務(wù)這個(gè)概念有一定誤導(dǎo)性,相對(duì)于傳統(tǒng)單體應(yīng)用,將其稱為“多體應(yīng)用”更準(zhǔn)確些。微服務(wù)架構(gòu)僅僅是一種新的解耦方式,是一種“徹底解耦的多實(shí)體應(yīng)用”,實(shí)體間徹底解耦,然后按照規(guī)范的方式協(xié)作是微服務(wù)架構(gòu)的根本特征。

    一個(gè)系統(tǒng)可以分為開發(fā)態(tài)和運(yùn)行態(tài),開發(fā)態(tài)即我們通過(guò)設(shè)計(jì)、開發(fā)、測(cè)試等過(guò)程逐漸構(gòu)建出來(lái)的系統(tǒng),此時(shí)系統(tǒng)是作為靜態(tài)的代碼、配置文件和數(shù)據(jù)的集合存在于硬盤中,是沒(méi)有行為的。運(yùn)行態(tài)即系統(tǒng)運(yùn)轉(zhuǎn)起來(lái)以后具有的結(jié)構(gòu)。

    傳統(tǒng)單體應(yīng)用的特征為:其開發(fā)態(tài)是一個(gè)實(shí)體,其運(yùn)行態(tài)是該實(shí)體的多個(gè)實(shí)例,就像類與對(duì)象的關(guān)系。傳統(tǒng)的單體應(yīng)用一般采用單機(jī)部署(很少,除非非常小的應(yīng)用或者實(shí)驗(yàn)性的系統(tǒng))或者集群化部署,其根本特征是“一個(gè)設(shè)計(jì)、開發(fā)、測(cè)試實(shí)體,一個(gè)或者多個(gè)運(yùn)行實(shí)體”。

    而微服務(wù)架構(gòu)在開發(fā)態(tài)時(shí)就是多個(gè)實(shí)體,運(yùn)行態(tài)更是每個(gè)開發(fā)態(tài)實(shí)體又產(chǎn)生多個(gè)實(shí)例,且如果與云技術(shù)結(jié)合,這些實(shí)例數(shù)可以動(dòng)態(tài)調(diào)整,故微服務(wù)架構(gòu)是一個(gè)“多個(gè)設(shè)計(jì)實(shí)體、多個(gè)開發(fā)實(shí)體、多個(gè)測(cè)試實(shí)體、多個(gè)運(yùn)行實(shí)體”的架構(gòu)。endprint

    4 二得:可用性第一、非功能需求優(yōu)先

    一個(gè)系統(tǒng)最重要的是可用性,可用性包括功能完備性、可維護(hù)性、可改進(jìn)性,失去了可用性,談?wù)撌裁雌渌际ヒ饬x,故在做架構(gòu)設(shè)計(jì)時(shí),所有技術(shù)決策都要確保和增強(qiáng)系統(tǒng)可用性,違背了這一原則引入的技術(shù)決策都是有問(wèn)題的,而微服務(wù)架構(gòu)使用不當(dāng)是會(huì)引入過(guò)多的復(fù)雜性的,此時(shí)是違背了上述原則,為了避免該問(wèn)題,在E系統(tǒng)的微服務(wù)拆分時(shí)我們始終堅(jiān)持可用性第一、非功能需求優(yōu)先的原則,筆者認(rèn)為這個(gè)原則具有普適性,特別是對(duì)于微服務(wù)劃分有一定指導(dǎo)意義。

    在這個(gè)原則的指導(dǎo)下,對(duì)一個(gè)應(yīng)用系統(tǒng)進(jìn)行微服務(wù)拆分應(yīng)該在兩個(gè)層面做出決定:

    (1)是否可拆分?

    (2)有沒(méi)有必要拆分?

    如果把需求分為功能性需求和非功能需求,則第一個(gè)問(wèn)題的答案取決于功能性需求,此時(shí)重點(diǎn)考慮如下要素:

    業(yè)務(wù)獨(dú)立性

    數(shù)據(jù)獨(dú)立性

    技術(shù)獨(dú)立性

    第二個(gè)問(wèn)題的答案取決于非功能需求,此時(shí)重點(diǎn)考慮如下幾項(xiàng)要素:

    可用性:功能完備性、可維護(hù)性、可改進(jìn)性

    性能

    穩(wěn)定性

    先進(jìn)性

    第一個(gè)層面的基礎(chǔ)上給出了一個(gè)潛在的微服務(wù)候選者列表,第二個(gè)方面的基礎(chǔ)上對(duì)候選者進(jìn)行過(guò)濾,給出了真正的微服務(wù)列表。

    微服務(wù)能夠劃分到什么程度取決于業(yè)務(wù)需求,比如互聯(lián)網(wǎng)應(yīng)用的業(yè)務(wù)性質(zhì)決定了應(yīng)用之間比較獨(dú)立,那么這種應(yīng)用切分就比較徹底,適宜于切分成比較小的微服務(wù),傳統(tǒng)企業(yè)應(yīng)用由于業(yè)務(wù)模塊之間有著千絲萬(wàn)縷的聯(lián)系,很難切分出比較小的微服務(wù),即功能性需求決定了一個(gè)應(yīng)用是否可以拆分。

    微服務(wù)應(yīng)該劃分到什么程度取決于非功能需求,如果某次拆分對(duì)改進(jìn)系統(tǒng)的非功能需求沒(méi)有貢獻(xiàn),就沒(méi)有必要拆分,也即非功能需求決定了有沒(méi)有必要拆分,說(shuō)到底是非功能需求決定了一個(gè)應(yīng)用系統(tǒng)會(huì)拆分出什么樣的微服務(wù)、拆分出多少微服務(wù)。

    實(shí)施微服務(wù)化時(shí)很自然地做法是看到一個(gè)應(yīng)用可以拆分就會(huì)繼續(xù)分下去,直到拆無(wú)可拆,這種做法是有害的。在操刀之前必須問(wèn)自己:難道能拆就必須拆嗎?否!并不是具備拆分條件的就必須把它拆分出來(lái)。在進(jìn)行遺留系統(tǒng)的微服務(wù)化時(shí),要堅(jiān)持非功能需求優(yōu)先的原則,盡管有時(shí)業(yè)務(wù)的性質(zhì)決定了其可以繼續(xù)拆分成更小粒度的微服務(wù),但是如果這次拆分對(duì)改進(jìn)系統(tǒng)的非功能需求沒(méi)有貢獻(xiàn),就沒(méi)有必要拆分,繼續(xù)拆分不但無(wú)益,反而會(huì)引入更多的復(fù)雜性,如更多的分布式事務(wù)、更多的遠(yuǎn)程調(diào)用、更多的故障點(diǎn)、更多的運(yùn)行維護(hù)困難。畢竟管理幾千個(gè)微服務(wù)和管理幾十個(gè)微服務(wù)其復(fù)雜性不在一個(gè)數(shù)量級(jí),此時(shí)一定要保持清醒頭腦,時(shí)刻記得我們引入微服務(wù)架構(gòu)的目的是什么,一般我們引入微服務(wù)架構(gòu)并不是因?yàn)槠湎冗M(jìn),而是因?yàn)槠淠軌蚪鉀Q某些問(wèn)題。

    E系統(tǒng)的業(yè)務(wù)中可以識(shí)別出很多相對(duì)獨(dú)立的業(yè)務(wù),這些業(yè)務(wù)在功能上、數(shù)據(jù)上都相對(duì)獨(dú)立,具備設(shè)立微服務(wù)的基本條件,但是只能說(shuō)是潛在的微服務(wù),是否必須設(shè)立為微服務(wù)?個(gè)人認(rèn)為還是從業(yè)務(wù)發(fā)展需要、可維護(hù)性、可擴(kuò)展性角度考慮,可拆可不拆的盡量不拆分。假如在設(shè)計(jì)階段不對(duì)復(fù)雜性進(jìn)行控制,則我們可能得到了一個(gè)架構(gòu)更加先進(jìn)的E系統(tǒng),但是它更加難以維護(hù),系統(tǒng)的綜合使用效果會(huì)大打折扣。

    5 三得:微服務(wù)大小和個(gè)數(shù)是偽命題

    微服務(wù)的“微”容易使人迷惑,很多團(tuán)隊(duì)在爭(zhēng)論到底要切分到什么層次、到底有多微才是“對(duì)的”等等問(wèn)題。在項(xiàng)目組內(nèi)部、在專家研討會(huì)上,就遇到不止一次就“到底要多大”“到底切分到什么程度”等問(wèn)題發(fā)生爭(zhēng)論,每當(dāng)此時(shí)我都會(huì)感慨起名字很重要,如果我們認(rèn)識(shí)到微服務(wù)實(shí)際上僅僅是一種新的解耦方式,是一種組件,只不過(guò)在開發(fā)態(tài)、運(yùn)行態(tài)都有一定獨(dú)立性,是一種解耦比較徹底的多實(shí)體架構(gòu),那么我們就會(huì)知道“到底要多大(才是對(duì)的)?”,“到底多少個(gè)(才算是微服務(wù)架構(gòu))?”等問(wèn)題都是偽命題,顆粒度、數(shù)量都不是微服務(wù)架構(gòu)的關(guān)鍵特征,微服務(wù)的大小、數(shù)量不應(yīng)是微服務(wù)架構(gòu)關(guān)心的,這些特征不應(yīng)該作為判定一個(gè)架構(gòu)是否是微服務(wù)架構(gòu)的標(biāo)準(zhǔn)、只要實(shí)現(xiàn)了“徹底的解耦”,即使拆分出的微服務(wù)很大、包含非常多的業(yè)務(wù)功能也是微服務(wù)架構(gòu),為何不是呢?

    可以采取反證法來(lái)說(shuō)明這個(gè)問(wèn)題:假設(shè)我們手上有一組很大的微服務(wù),我們計(jì)劃要對(duì)其進(jìn)一步拆分,只要保持了業(yè)務(wù)功能解耦、數(shù)據(jù)解耦,我們隨時(shí)可以把它簡(jiǎn)單地進(jìn)一步拆分,這樣做沒(méi)有引起任何技術(shù)路線、系統(tǒng)運(yùn)行機(jī)理、運(yùn)維方式上的變化,只是每個(gè)實(shí)體變得小了,那么為何僅僅因?yàn)閷?shí)體變小了就成了微服務(wù)架構(gòu),而原來(lái)的不是微服務(wù)架構(gòu)?

    5.1 微服務(wù)不宜拆的過(guò)細(xì)

    在對(duì)E系統(tǒng)進(jìn)行拆分時(shí),不止一次遇到這個(gè)問(wèn)題,對(duì)于這個(gè)問(wèn)題每次我都會(huì)回答:微服務(wù)架構(gòu)并不關(guān)心某個(gè)微服務(wù)的大小。

    業(yè)界有的認(rèn)為微服務(wù)應(yīng)該拆分到領(lǐng)域?qū)ο蟮牧6?,甚至有的說(shuō)要到100行代碼!這都是沒(méi)有堅(jiān)持可用性第一的原則造成的錯(cuò)誤觀點(diǎn)。

    (1)在對(duì)傳統(tǒng)企業(yè)應(yīng)用進(jìn)行微服務(wù)劃分時(shí),劃分到領(lǐng)域?qū)ο蟮淖龇ㄊ堑貌粌斒У?,首先如果劃分到領(lǐng)域?qū)ο髸?huì)造成非常多的微服務(wù),比如E系統(tǒng)的業(yè)務(wù)非常復(fù)雜,領(lǐng)域?qū)ο筮_(dá)到1000多個(gè),按照這個(gè)做法會(huì)有1000個(gè)微服務(wù),盡管有很多工具支撐,開發(fā)、運(yùn)維這個(gè)數(shù)量級(jí)的微服務(wù)不在話下,但是總是造成了很大的運(yùn)維復(fù)雜性,請(qǐng)問(wèn)引入這些復(fù)雜性的同時(shí)我們得到了什么好處?架構(gòu)更清晰了?只要正確地按照領(lǐng)域驅(qū)動(dòng)的設(shè)計(jì)原理去做,即使不把領(lǐng)域?qū)ο螵?dú)立成微服務(wù)也可以做到架構(gòu)很清晰。

    (2)領(lǐng)域驅(qū)動(dòng)是一種業(yè)務(wù)分析方法論,不是架構(gòu)設(shè)計(jì)方法論,其沒(méi)有考慮到分布式事務(wù)、數(shù)據(jù)一致性、運(yùn)維監(jiān)控等架構(gòu)設(shè)計(jì)場(chǎng)景的需要。按照該方法論領(lǐng)域?qū)ο笾g是設(shè)計(jì)上、邏輯上實(shí)現(xiàn)了解耦的,但是并沒(méi)有考慮到一旦它們物理上(運(yùn)行態(tài))也解耦時(shí)面臨的問(wèn)題如何解決,故使用領(lǐng)域驅(qū)動(dòng)方法論進(jìn)行業(yè)務(wù)分析是可以的,但是把它用于架構(gòu)設(shè)計(jì)領(lǐng)域則不適用。

    在傳統(tǒng)企業(yè)應(yīng)用中,同時(shí)對(duì)多個(gè)領(lǐng)域?qū)ο蟛僮鞯慕灰追浅6啵热缭趯?duì)合同進(jìn)行操作時(shí),可能會(huì)同時(shí)對(duì)訂單進(jìn)行操作,按照領(lǐng)域?qū)ο蟮耐ǔW龇?,僅僅是在合同對(duì)象的某個(gè)方法中調(diào)用了訂單對(duì)象的某個(gè)方法,這個(gè)操作是本地調(diào)用,如果把每個(gè)領(lǐng)域?qū)ο笞鳛橐粋€(gè)微服務(wù),則該種調(diào)用變?yōu)檫h(yuǎn)程調(diào)用,這就引入如分布式事務(wù)、增加了故障點(diǎn)等等一系列始料未及的問(wèn)題,這些問(wèn)題并不是沒(méi)有辦法解決,但是架構(gòu)設(shè)計(jì)的原則是以最小代價(jià)解決問(wèn)題,能用本地調(diào)用解決的,為何用遠(yuǎn)程調(diào)用?能用簡(jiǎn)單方法做到的,為何用復(fù)雜的方法去做?endprint

    歸根結(jié)底是微服務(wù)劃分不宜太細(xì),把微服務(wù)劃分到領(lǐng)域?qū)ο蠹?jí)別是劃分的太細(xì)了。

    (3)至于微服務(wù)要到100行代碼的觀點(diǎn),不知哪個(gè)平臺(tái)堅(jiān)持了這個(gè)原則。

    5.2 不要追求微服務(wù)個(gè)數(shù)

    除了對(duì)微服務(wù)大小產(chǎn)生迷惑外,也有人會(huì)關(guān)心微服務(wù)個(gè)數(shù)。這個(gè)問(wèn)題也偶爾也產(chǎn)生過(guò)爭(zhēng)論,基本上可以把上面的回答復(fù)制下來(lái)回答這個(gè)問(wèn)題:

    微服務(wù)架構(gòu)本質(zhì)上是“一種新的解耦方式”,個(gè)數(shù)不是微服務(wù)架構(gòu)的關(guān)鍵特征,多少個(gè)微服務(wù)更不是微服務(wù)架構(gòu)關(guān)心的,只要按照規(guī)定方式實(shí)現(xiàn)了“徹底的解耦”,即使僅有幾個(gè)微服務(wù)也是微服務(wù)架構(gòu),為何不是呢?

    盡管不能因?yàn)槲⒎?wù)個(gè)數(shù)少就懷疑其是假的微服務(wù)架構(gòu),但是討論“多少個(gè)微服是合適的”這個(gè)問(wèn)題是有意義的。

    每個(gè)微服務(wù)實(shí)例都是一組獨(dú)立的運(yùn)維單元,盡管微服務(wù)架構(gòu)必然伴隨著DevOPs,但是運(yùn)維單元越多,復(fù)雜性越大,運(yùn)維越困難這個(gè)事實(shí)是不爭(zhēng)的。因此微服務(wù)的數(shù)量當(dāng)然是越少越好,前提是解決了我們的問(wèn)題,達(dá)到了目的。即使你有阿里那樣的黃金團(tuán)隊(duì),但為何非要給自己找麻煩呢?

    6 四得:微服務(wù)化是組件化的一種形式

    架構(gòu)設(shè)計(jì)的通常做法就是“分而治之”,化復(fù)雜的問(wèn)題為多個(gè)簡(jiǎn)單的小問(wèn)題,再逐個(gè)擊破,微服務(wù)架構(gòu)是這種思想的一個(gè)生動(dòng)體現(xiàn),這種思想的另一個(gè)重要實(shí)踐是組件化設(shè)計(jì)。

    從組件化的角度來(lái)看微服務(wù)架構(gòu),可以發(fā)現(xiàn)微服務(wù)是一個(gè)組件集合,只不過(guò)該種組件集合是一個(gè)獨(dú)立的設(shè)計(jì)、開發(fā)、測(cè)試、運(yùn)維實(shí)體。組件局限在一個(gè)邏輯層內(nèi),一般不跨越層,但是微服務(wù)是跨越多個(gè)層。

    組件劃分一般先水平分層,再層內(nèi)切分。微服務(wù)劃分則在組件劃分的基礎(chǔ)上還要多做一步工作:先水平劃分,再層內(nèi)切分,然后再根據(jù)功能把組件組合成一個(gè)集合,該集合即為微服務(wù),其可以跨越多個(gè)層,向外提供一組服務(wù)接口。

    6.1 從邏輯分層角度認(rèn)識(shí)微服務(wù)和組件的關(guān)系

    E系統(tǒng)分為展現(xiàn)層、應(yīng)用服務(wù)層、業(yè)務(wù)邏輯層、基礎(chǔ)業(yè)務(wù)服務(wù)層、技術(shù)服務(wù)層、基礎(chǔ)架構(gòu)服務(wù)層,同層內(nèi)部再劃分為一個(gè)個(gè)組件。

    E系統(tǒng)的組件分為技術(shù)型組件和業(yè)務(wù)型組件,同樣邏輯層也分為技術(shù)性層和業(yè)務(wù)性層:展現(xiàn)層、應(yīng)用服務(wù)層、技術(shù)服務(wù)層、基礎(chǔ)架構(gòu)服務(wù)層是技術(shù)性的層,里面分布的是技術(shù)性組件,一般不會(huì)隨著業(yè)務(wù)變化而變化;業(yè)務(wù)邏輯層、基礎(chǔ)業(yè)務(wù)服務(wù)層是業(yè)務(wù)性質(zhì)的層,里面容納的是功能組件,是領(lǐng)域?qū)ο?,可以認(rèn)為E系統(tǒng)的全部業(yè)務(wù)在這兩個(gè)層中;理論上說(shuō),業(yè)務(wù)發(fā)生變化,不會(huì)引起技術(shù)性層中組件的變化,同樣,替換技術(shù)層中的組件,也不會(huì)引起業(yè)務(wù)層發(fā)生變化。

    6.1.1 沒(méi)有微服務(wù)化時(shí)的邏輯分層模型

    圖3是簡(jiǎn)化后的沒(méi)有微服務(wù)化時(shí)的E系統(tǒng)組件劃分圖。

    6.1.2 微服務(wù)化后的邏輯分層模型

    微服務(wù)與組件的區(qū)別在于微服務(wù)可以跨越多個(gè)邏輯層,微服務(wù)不以復(fù)用為目的,相反,為了達(dá)到高內(nèi)聚低耦合的目標(biāo),微服務(wù)必須集成自己需要的各個(gè)組件,使得同一個(gè)組件在多個(gè)微服務(wù)中重復(fù)。

    微服務(wù)同時(shí)容納業(yè)務(wù)型組件和技術(shù)型組件,其容納的業(yè)務(wù)型組件決定了其對(duì)外提供的服務(wù),不同微服務(wù)之間的區(qū)別在于其業(yè)務(wù)邏輯層和基礎(chǔ)業(yè)務(wù)服務(wù)層集成的業(yè)務(wù)型組件是不同的,但是其他層的技術(shù)型組件則基本相同,即同一個(gè)技術(shù)組件在不同微服務(wù)中多次被集成,業(yè)務(wù)組件則每個(gè)微服務(wù)不同,換句話說(shuō)微服務(wù)之所以能夠提供不同的功能,是因?yàn)槠淙菁{了不同的業(yè)務(wù)型組件。

    圖4是E系統(tǒng)的微服務(wù)和組件關(guān)系示意圖。

    區(qū)別于一般互聯(lián)網(wǎng)平臺(tái),E系統(tǒng)的業(yè)務(wù)是典型的企業(yè)應(yīng)用,業(yè)務(wù)耦合數(shù)據(jù)耦合比較緊密,故E系統(tǒng)的微服務(wù)沒(méi)有遵循一個(gè)微服務(wù)一個(gè)數(shù)據(jù)庫(kù)的流行做法,即E系統(tǒng)的微服務(wù)僅包含了應(yīng)用服務(wù)層、業(yè)務(wù)邏輯層、基礎(chǔ)業(yè)務(wù)服務(wù)層,技術(shù)服務(wù)層,而沒(méi)有包含基礎(chǔ)架構(gòu)服務(wù)層。

    6.2 微服務(wù)、系統(tǒng)、子系統(tǒng)與組件

    6.2.1 微服務(wù)與組件

    微服務(wù)就是組件的集合,也可以認(rèn)為是一種比較大的組件,其跨越多個(gè)邏輯層,同時(shí)包含了技術(shù)型組件和業(yè)務(wù)型組件,微服務(wù)提供的服務(wù)是業(yè)務(wù)型組件決定的,技術(shù)型組件輔助業(yè)務(wù)型組件提供了這些服務(wù)。

    6.2.2 微服務(wù)與子系統(tǒng)

    子系統(tǒng)仍然是傳統(tǒng)單體應(yīng)用架構(gòu)下的概念,第3節(jié)中關(guān)于單體架構(gòu)和微服務(wù)架構(gòu)之間的區(qū)別,也描述了子系統(tǒng)和微服務(wù)之間的區(qū)別:子系統(tǒng)雖然是一種解耦,但是多個(gè)子系統(tǒng)之間在分析、設(shè)計(jì)、開發(fā)、測(cè)試、運(yùn)維中都是在同一個(gè)實(shí)體中的,子系統(tǒng)之間不會(huì)作為獨(dú)立的運(yùn)維單元對(duì)待。而微服務(wù)則是在分析、設(shè)計(jì)、開發(fā)、測(cè)試、運(yùn)行過(guò)程中可以全程保持獨(dú)立,作為一個(gè)獨(dú)立的單元對(duì)待。

    6.2.3 微服務(wù)與系統(tǒng)

    微服務(wù)之間會(huì)使用同一組基礎(chǔ)架構(gòu)層的組件,如分布式消息隊(duì)列、分布式會(huì)話組件、分布式緩存組件等,且之間的通訊協(xié)議是比較規(guī)范的,一般提供遵循Restful風(fēng)格的接口;而系統(tǒng)之間一般是完全獨(dú)立的,不會(huì)共享組件,且之間的通訊協(xié)議是相當(dāng)豐富多彩。

    7 五得:微服務(wù)劃分的其他原則

    (1)一個(gè)微服務(wù)要實(shí)現(xiàn)一個(gè)比較獨(dú)立的業(yè)務(wù),具有清晰的邊界,同時(shí)微服務(wù)應(yīng)該足夠大,盡量把業(yè)務(wù)變化包裹在自己的邊界之內(nèi)。

    (2)盡量避免微服務(wù)之間的相互調(diào)用,避免分布式事務(wù),一個(gè)微服務(wù)盡量提供一個(gè)完整的功能,不要把微服務(wù)之間的調(diào)用作為常態(tài),要把其作為不得已而為之的選擇。

    (3)微服務(wù)要自我完備,包含自己的各種技術(shù)上的依賴和第三方包,微服務(wù)的目的不是實(shí)現(xiàn)代碼復(fù)用,而是分而治之:把一個(gè)大的應(yīng)用拆分為幾個(gè)小的應(yīng)用。

    (4)微服務(wù)應(yīng)該作為獨(dú)立的設(shè)計(jì)、開發(fā)、部署、運(yùn)維單元,獨(dú)立演進(jìn)而不影響其他微服務(wù)。

    (5)不追求微服務(wù)數(shù)量,能少則少。

    (6)迭代式前進(jìn),微服務(wù)化是一個(gè)迭代的過(guò)程,不斷迭代,逐漸逼近最優(yōu),而不是一步到位(實(shí)際上無(wú)法確定什么是最優(yōu),只有不斷實(shí)踐、觀察、再實(shí)踐,通過(guò)這種迭代逼近最優(yōu))endprint

    8 六得:中間路線是最合適的架構(gòu)

    E系統(tǒng)在微服務(wù)化過(guò)程中存在四種狀態(tài):

    (1)單體應(yīng)用狀態(tài),是系統(tǒng)的原始狀態(tài)

    (2)單體應(yīng)用+一組非功能型微服務(wù)狀態(tài)

    這組微服務(wù)是按照非功能需求優(yōu)先的原則從遺留系統(tǒng)中拆分出來(lái)的,這個(gè)單體應(yīng)用自然是從遺留中拆分出微服務(wù)后剩下的沒(méi)有必要(或者暫時(shí)沒(méi)有必要)拆分的部分

    (3)一組功能型微服務(wù)+一組非功能型微服務(wù)狀態(tài)

    如果是從零開始構(gòu)建一個(gè)微服務(wù)架構(gòu)的系統(tǒng),則建議是“一個(gè)或幾個(gè)大的微服務(wù)(實(shí)現(xiàn)了絕大多數(shù)業(yè)務(wù),稱功能型微服務(wù))”+“一系列小的微服務(wù)(出于非功能需求而拆分出來(lái)的,稱非功能型微服務(wù))”,這樣更加簡(jiǎn)單,避免了復(fù)雜性。

    如果是從遺留系統(tǒng)進(jìn)行微服務(wù)化,此時(shí)因?yàn)榉枪δ苄枨笠呀?jīng)得到滿足,繼續(xù)對(duì)遺留的單體應(yīng)用拆分的理由可能是為了使得系統(tǒng)架構(gòu)更加統(tǒng)一,簡(jiǎn)化技術(shù)路線,消滅單體應(yīng)用。盡管可以對(duì)遺留系統(tǒng)繼續(xù)拆分,但為了避免引入過(guò)多的復(fù)雜性,建議對(duì)遺留的單體進(jìn)行比較粗粒度的拆分,消滅單體即可。

    (4)能拆盡拆后得到的一群微服務(wù)

    最純的微服務(wù)架構(gòu)狀態(tài),筆者認(rèn)為沒(méi)有必要追求。

    第三、第四兩種狀態(tài)可以認(rèn)為是標(biāo)準(zhǔn)的微服務(wù)架構(gòu)了,實(shí)踐中筆者認(rèn)為對(duì)遺留系統(tǒng)來(lái)說(shuō),中間路線是最合適的架構(gòu),如果對(duì)一個(gè)已經(jīng)存在的系統(tǒng)做微服務(wù)化改造,最合適的結(jié)果是第二或第三兩種狀態(tài);如果是從零開始構(gòu)建一個(gè)微服務(wù)架構(gòu)的系統(tǒng),則建議達(dá)到第三種狀態(tài)即可。

    實(shí)踐中E系統(tǒng)在達(dá)到第三種狀態(tài)即停止進(jìn)一步切分,得出E系統(tǒng)中有兩類微服務(wù):

    (1)功能型微服務(wù):包含一個(gè)完整、獨(dú)立的業(yè)務(wù)功能的一組微服務(wù),比較大。

    (2)非功能型微服務(wù):出于性能、穩(wěn)定性、可維護(hù)性、可擴(kuò)展性等非功能需要而設(shè)立的一組微服務(wù),如(舉例):

    投標(biāo)文件上傳微服務(wù):在大批次招投標(biāo)業(yè)務(wù)時(shí),要求規(guī)定時(shí)間內(nèi)上傳5TB數(shù)據(jù),性能要求高。

    解密微服務(wù):在2小時(shí)內(nèi)完成2.4TB投標(biāo)文的解密,性能要求極高。

    查詢開標(biāo)結(jié)果微服務(wù):在開展大批次招投標(biāo)業(yè)務(wù)時(shí)瞬時(shí)流量非常大,性能要求高,需要彈性擴(kuò)展。

    其中第二種微服務(wù)是真正有價(jià)值、有必要存在的微服務(wù),是這次微服務(wù)化改造的重點(diǎn);對(duì)于第一種微服務(wù),綜合考慮各方因素項(xiàng)目組對(duì)該類微服務(wù)僅做了比較粗粒度的劃分。

    9 結(jié)束語(yǔ)

    本人非常贊同“架構(gòu)設(shè)計(jì)是做出一系列決策的過(guò)程”這個(gè)觀點(diǎn),所謂決策,就有“趨之若鶩、甘之如飴”的主動(dòng)選擇,也有“不得不做、兩害取輕”的被動(dòng)選擇。在E系統(tǒng)的架構(gòu)設(shè)計(jì)過(guò)程中,本人迫切感到需要區(qū)分這兩種選擇,比如選擇微服務(wù)架構(gòu)就屬于后者,是因?yàn)樽鳛閱误w應(yīng)用的E1.0已經(jīng)不能滿足需要,使得我們不得不選擇微服務(wù)架構(gòu),這是一個(gè)“不得不”做出的選擇,在利用其解決問(wèn)題的同時(shí),應(yīng)該非常小心地避免其帶來(lái)的副作用,在筆者看來(lái)其最大的副作用就是引入了過(guò)多的復(fù)雜性,因此在實(shí)施微服務(wù)化改造時(shí)要注意努力減少?gòu)?fù)雜性。網(wǎng)上有人談?chuàng)肀⒎?wù)架構(gòu),我則要說(shuō):客觀對(duì)待微服務(wù)架構(gòu)。

    微服務(wù)是一劑良藥,說(shuō)它是良藥,就意味著它不是佳肴美味,不能當(dāng)飯吃,有病才吃無(wú)病遠(yuǎn)之,謹(jǐn)記關(guān)于分布式架構(gòu)的第一個(gè)原則:能不采用分布式的就不采用分布式。

    參考文獻(xiàn):

    [1]李楠.計(jì)算機(jī)安全技術(shù)在電子商務(wù)中的應(yīng)用[J].科技創(chuàng)新與應(yīng)用,2015(06):55.

    [2]宋大為,侯婷婷,顧松敏,等.數(shù)據(jù)挖掘技術(shù)在電子商務(wù)領(lǐng)域的應(yīng)用研究[J].科技創(chuàng)新與應(yīng)用,2016(05):87.

    [3]尹紹捷.移動(dòng)互聯(lián)網(wǎng)技術(shù)與電子商務(wù)[J].科技創(chuàng)新與應(yīng)用,2015(30):89.endprint

    精品一区二区三区视频在线观看免费 | 国产成+人综合+亚洲专区| 欧美日韩av久久| 欧美亚洲日本最大视频资源| 精品国产亚洲在线| 真人做人爱边吃奶动态| 麻豆国产av国片精品| 日韩三级视频一区二区三区| 神马国产精品三级电影在线观看 | 波多野结衣一区麻豆| 最近最新中文字幕大全免费视频| 老汉色av国产亚洲站长工具| 欧美av亚洲av综合av国产av| 国产三级在线视频| 欧美成人午夜精品| 亚洲精品一卡2卡三卡4卡5卡| 丝袜美足系列| 欧美日韩国产mv在线观看视频| 亚洲国产精品合色在线| 身体一侧抽搐| 男人舔女人下体高潮全视频| 90打野战视频偷拍视频| 日韩大码丰满熟妇| 欧美丝袜亚洲另类 | 日韩中文字幕欧美一区二区| 男人舔女人下体高潮全视频| 久久久水蜜桃国产精品网| 久久人妻熟女aⅴ| 成年人黄色毛片网站| 性少妇av在线| 免费一级毛片在线播放高清视频 | 久久青草综合色| svipshipincom国产片| 看黄色毛片网站| 色老头精品视频在线观看| 一本大道久久a久久精品| 久久国产精品影院| 99久久人妻综合| 精品久久久久久久毛片微露脸| 久久天躁狠狠躁夜夜2o2o| 日本一区二区免费在线视频| 成熟少妇高潮喷水视频| 9热在线视频观看99| 久久欧美精品欧美久久欧美| 婷婷六月久久综合丁香| videosex国产| 黄色片一级片一级黄色片| 亚洲男人的天堂狠狠| 窝窝影院91人妻| 午夜免费鲁丝| 久久香蕉精品热| 午夜免费成人在线视频| 欧美黄色片欧美黄色片| 中文字幕另类日韩欧美亚洲嫩草| 成人手机av| 一级,二级,三级黄色视频| 一级片'在线观看视频| 免费人成在线观看视频色| 日韩国内少妇激情av| 动漫黄色视频在线观看| 精品人妻视频免费看| 国产高清视频在线观看网站| 日本免费a在线| 亚洲最大成人手机在线| 波多野结衣巨乳人妻| 久久香蕉精品热| 深夜a级毛片| 国产av在哪里看| 亚洲最大成人av| 精品久久久久久久末码| 99热这里只有精品一区| 757午夜福利合集在线观看| 一区二区三区高清视频在线| 最新中文字幕久久久久| 91av网一区二区| 听说在线观看完整版免费高清| 欧美成人一区二区免费高清观看| 在线免费观看不下载黄p国产 | 日韩欧美在线二视频| 午夜免费男女啪啪视频观看 | 日韩欧美国产在线观看| 伦理电影大哥的女人| 国产精品99久久久久久久久| 欧美+亚洲+日韩+国产| 黄色女人牲交| а√天堂www在线а√下载| 我要看日韩黄色一级片| 校园春色视频在线观看| 18+在线观看网站| 国产老妇女一区| 此物有八面人人有两片| 久久中文看片网| 欧美成人性av电影在线观看| 欧美日韩乱码在线| 亚洲久久久久久中文字幕| 国产色婷婷99| 白带黄色成豆腐渣| 少妇丰满av| 少妇丰满av| 午夜精品一区二区三区免费看| 日韩亚洲欧美综合| 亚洲成a人片在线一区二区| 99热这里只有是精品50| 国产精品99久久久久久久久| 欧美日韩瑟瑟在线播放| 欧美日韩综合久久久久久 | 啦啦啦观看免费观看视频高清| 日韩欧美在线二视频| 国产综合懂色| av黄色大香蕉| 国产激情偷乱视频一区二区| 国产免费男女视频| 白带黄色成豆腐渣| 自拍偷自拍亚洲精品老妇| 国产乱人视频| 三级国产精品欧美在线观看| 嫩草影视91久久| 日本五十路高清| 国产精品1区2区在线观看.| 国产乱人伦免费视频| 国产白丝娇喘喷水9色精品| 一个人看的www免费观看视频| 一个人看视频在线观看www免费| 好看av亚洲va欧美ⅴa在| 看片在线看免费视频| 国产激情偷乱视频一区二区| 丁香六月欧美| 国产色爽女视频免费观看| 精品午夜福利视频在线观看一区| 男人狂女人下面高潮的视频| 夜夜夜夜夜久久久久| 国产69精品久久久久777片| 一区二区三区免费毛片| 午夜福利在线观看吧| 男人的好看免费观看在线视频| 一本一本综合久久| 色综合欧美亚洲国产小说| 校园春色视频在线观看| 午夜久久久久精精品| 亚洲三级黄色毛片| 欧美日本视频| 一个人看的www免费观看视频| 中文字幕av成人在线电影| 亚洲av一区综合| 亚洲人成电影免费在线| 国产av麻豆久久久久久久| 麻豆成人av在线观看| 亚洲av成人av| 麻豆国产av国片精品| 在线看三级毛片| 赤兔流量卡办理| 动漫黄色视频在线观看| 制服丝袜大香蕉在线| 一卡2卡三卡四卡精品乱码亚洲| 欧美激情国产日韩精品一区| 两个人的视频大全免费| 午夜亚洲福利在线播放| 亚洲精品456在线播放app | 99久久精品一区二区三区| netflix在线观看网站| 一级a爱片免费观看的视频| 综合色av麻豆| 欧美3d第一页| 好看av亚洲va欧美ⅴa在| 久久婷婷人人爽人人干人人爱| 欧美成人性av电影在线观看| 成人鲁丝片一二三区免费| 欧美潮喷喷水| 欧美bdsm另类| 久久久久久久精品吃奶| 久久精品国产亚洲av天美| 国产免费一级a男人的天堂| 99热只有精品国产| 亚洲av免费高清在线观看| 色综合婷婷激情| 亚洲av成人不卡在线观看播放网| 国产黄a三级三级三级人| 午夜老司机福利剧场| 国产成人啪精品午夜网站| 亚洲中文字幕一区二区三区有码在线看| 精品久久久久久久久亚洲 | 亚洲黑人精品在线| 蜜桃久久精品国产亚洲av| 国产av一区在线观看免费| 91久久精品电影网| 色综合站精品国产| 97超级碰碰碰精品色视频在线观看| 国产aⅴ精品一区二区三区波| 一级黄色大片毛片| 美女高潮喷水抽搐中文字幕| 国内精品久久久久久久电影| 在线播放无遮挡| 99国产极品粉嫩在线观看| 午夜亚洲福利在线播放| 欧美成人免费av一区二区三区| 国内精品一区二区在线观看| 亚洲av美国av| 免费搜索国产男女视频| 尤物成人国产欧美一区二区三区| 亚洲人成电影免费在线| 在线免费观看不下载黄p国产 | 又黄又爽又刺激的免费视频.| 亚洲人成网站在线播放欧美日韩| 亚洲内射少妇av| 国产麻豆成人av免费视频| 少妇的逼水好多| 国产精品1区2区在线观看.| 色哟哟哟哟哟哟| 国产三级在线视频| 久久久久久久久久黄片| 中文字幕人成人乱码亚洲影| 中文字幕人成人乱码亚洲影| 亚洲欧美日韩无卡精品| 国产一区二区亚洲精品在线观看| 免费观看人在逋| 午夜老司机福利剧场| 亚洲欧美日韩高清专用| 色综合欧美亚洲国产小说| 十八禁国产超污无遮挡网站| 午夜日韩欧美国产| 人妻制服诱惑在线中文字幕| 午夜福利在线观看免费完整高清在 | 国产精品亚洲一级av第二区| 黄片小视频在线播放| 国产成人影院久久av| 欧美成人免费av一区二区三区| 成人高潮视频无遮挡免费网站| 美女免费视频网站| 欧美成人性av电影在线观看| 少妇人妻精品综合一区二区 | 在线观看舔阴道视频| 午夜免费成人在线视频| 国产精品免费一区二区三区在线| 俺也久久电影网| 久久久久久久久久成人| 国产一区二区激情短视频| 校园春色视频在线观看| 99视频精品全部免费 在线| 波多野结衣高清无吗| 欧美黑人欧美精品刺激| 午夜激情福利司机影院| 午夜日韩欧美国产| 又紧又爽又黄一区二区| 日韩欧美免费精品| 免费av观看视频| 欧美午夜高清在线| 欧美成人免费av一区二区三区| 亚洲经典国产精华液单 | av在线老鸭窝| 又粗又爽又猛毛片免费看| 亚洲av美国av| 亚洲avbb在线观看| 人妻夜夜爽99麻豆av| 香蕉av资源在线| 又爽又黄无遮挡网站| 激情在线观看视频在线高清| 亚洲综合色惰| 人妻久久中文字幕网| 午夜福利高清视频| a在线观看视频网站| netflix在线观看网站| 日韩中字成人| 亚洲欧美清纯卡通| 国产精品乱码一区二三区的特点| 日本五十路高清| 午夜福利免费观看在线| 国产精品伦人一区二区| av福利片在线观看| 久久精品综合一区二区三区| 免费看日本二区| 黄色配什么色好看| 国产成年人精品一区二区| 欧美黑人巨大hd| 亚洲精品456在线播放app | 欧美中文日本在线观看视频| 18+在线观看网站| 午夜福利在线观看免费完整高清在 | 国产视频一区二区在线看| 午夜福利18| 国产欧美日韩一区二区三| 欧美bdsm另类| 搡老妇女老女人老熟妇| 久9热在线精品视频| 欧美高清性xxxxhd video| 亚洲av五月六月丁香网| 97超视频在线观看视频| 中国美女看黄片| 国产又黄又爽又无遮挡在线| 9191精品国产免费久久| 国产真实伦视频高清在线观看 | 中文字幕熟女人妻在线| 欧美丝袜亚洲另类 | 久久久久久久亚洲中文字幕 | 床上黄色一级片| 在线观看午夜福利视频| 亚洲精品影视一区二区三区av| 免费在线观看影片大全网站| 国产男靠女视频免费网站| 久久久久久大精品| 禁无遮挡网站| 国产精品久久电影中文字幕| 久久精品国产亚洲av涩爱 | 国产男靠女视频免费网站| 欧美bdsm另类| 久久久久久大精品| 亚洲欧美日韩高清专用| 国产 一区 欧美 日韩| 久久国产精品人妻蜜桃| 国产免费男女视频| 日韩欧美 国产精品| 国产91精品成人一区二区三区| 欧美bdsm另类| 99热只有精品国产| 我要看日韩黄色一级片| 日韩欧美精品免费久久 | 亚洲,欧美,日韩| 亚洲精品亚洲一区二区| 一级av片app| 天天躁日日操中文字幕| 国产成人av教育| 久久国产精品人妻蜜桃| 国产成+人综合+亚洲专区| 免费无遮挡裸体视频| 无遮挡黄片免费观看| 精品久久久久久久久av| 午夜免费激情av| 老司机午夜福利在线观看视频| 国产午夜精品论理片| 嫩草影视91久久| 观看美女的网站| 一卡2卡三卡四卡精品乱码亚洲| 永久网站在线| 综合色av麻豆| 无人区码免费观看不卡| 99精品在免费线老司机午夜| 亚洲成人久久性| 欧美一区二区亚洲| 色视频www国产| 久久精品人妻少妇| 51国产日韩欧美| 国产免费一级a男人的天堂| 日韩欧美精品免费久久 | 婷婷精品国产亚洲av在线| 免费大片18禁| 韩国av一区二区三区四区| 丰满的人妻完整版| 亚洲人成伊人成综合网2020| 变态另类成人亚洲欧美熟女| 亚洲内射少妇av| 人妻久久中文字幕网| 99久久久亚洲精品蜜臀av| 亚洲av免费高清在线观看| 久久久久久久久久成人| 99在线人妻在线中文字幕| 人妻丰满熟妇av一区二区三区| 丁香欧美五月| 日韩 亚洲 欧美在线| 两个人的视频大全免费| 精品熟女少妇八av免费久了| 在线观看av片永久免费下载| 国产成人aa在线观看| 1000部很黄的大片| 亚洲欧美日韩卡通动漫| 国产高清三级在线| 日本精品一区二区三区蜜桃| 男人狂女人下面高潮的视频| 亚洲电影在线观看av| 禁无遮挡网站| 国产精品国产高清国产av| 中文字幕人成人乱码亚洲影| 校园春色视频在线观看| 人人妻人人澡欧美一区二区| 国产精品久久视频播放| 亚洲国产高清在线一区二区三| 舔av片在线| 国产精品人妻久久久久久| 欧美黄色片欧美黄色片| 国产成人aa在线观看| 91久久精品电影网| 国产成人影院久久av| 全区人妻精品视频| 91在线精品国自产拍蜜月| 乱码一卡2卡4卡精品| 丰满的人妻完整版| 国产综合懂色| 搡老岳熟女国产| 亚洲av电影不卡..在线观看| 在线观看av片永久免费下载| 亚洲人与动物交配视频| 成年女人看的毛片在线观看| 老鸭窝网址在线观看| 变态另类成人亚洲欧美熟女| 我要搜黄色片| 成人一区二区视频在线观看| 麻豆国产97在线/欧美| 直男gayav资源| 小说图片视频综合网站| 日韩av在线大香蕉| 搡老熟女国产l中国老女人| 欧美日韩乱码在线| 天堂av国产一区二区熟女人妻| 国产精品综合久久久久久久免费| 美女 人体艺术 gogo| 激情在线观看视频在线高清| or卡值多少钱| 国产亚洲精品综合一区在线观看| 十八禁网站免费在线| 日日摸夜夜添夜夜添小说| 久久婷婷人人爽人人干人人爱| 亚洲第一电影网av| av国产免费在线观看| 俺也久久电影网| 少妇高潮的动态图| 五月伊人婷婷丁香| 午夜激情福利司机影院| av在线蜜桃| 91久久精品国产一区二区成人| 网址你懂的国产日韩在线| 国产伦人伦偷精品视频| 亚洲av中文字字幕乱码综合| 偷拍熟女少妇极品色| 免费人成在线观看视频色| 久久久久久国产a免费观看| 精品久久久久久久久久免费视频| 日本 av在线| 99riav亚洲国产免费| 在线十欧美十亚洲十日本专区| 欧美日韩中文字幕国产精品一区二区三区| 一本精品99久久精品77| 精品人妻偷拍中文字幕| 欧美黄色淫秽网站| 日韩欧美国产一区二区入口| 欧美中文日本在线观看视频| 国产精品久久久久久亚洲av鲁大| 久久6这里有精品| 欧美最新免费一区二区三区 | 亚洲欧美日韩高清专用| 成年女人看的毛片在线观看| 色噜噜av男人的天堂激情| 可以在线观看的亚洲视频| 在线观看免费视频日本深夜| 精品欧美国产一区二区三| 黄色日韩在线| or卡值多少钱| 欧美+日韩+精品| 色噜噜av男人的天堂激情| 国产一区二区三区在线臀色熟女| 高清日韩中文字幕在线| 精品欧美国产一区二区三| 亚洲一区二区三区不卡视频| 日本黄大片高清| 亚洲精品成人久久久久久| 国产高清视频在线观看网站| 欧美日韩黄片免| 午夜福利欧美成人| 一进一出抽搐动态| 制服丝袜大香蕉在线| 一进一出抽搐动态| 免费在线观看影片大全网站| 色精品久久人妻99蜜桃| 欧美高清成人免费视频www| 亚洲自偷自拍三级| 国产色爽女视频免费观看| 88av欧美| 欧美成人免费av一区二区三区| 国产三级在线视频| 欧美黑人巨大hd| 中文字幕av在线有码专区| 久久人人爽人人爽人人片va | 亚洲av成人av| 美女xxoo啪啪120秒动态图 | 亚洲av成人精品一区久久| 日本成人三级电影网站| 久久精品影院6| 人妻丰满熟妇av一区二区三区| 久久久久亚洲av毛片大全| 嫩草影院入口| 精品久久久久久久久久免费视频| 久久中文看片网| 久久99热6这里只有精品| 天堂av国产一区二区熟女人妻| 亚洲精品在线观看二区| 老鸭窝网址在线观看| 天堂av国产一区二区熟女人妻| 色噜噜av男人的天堂激情| 性色avwww在线观看| av福利片在线观看| 久久久久久久午夜电影| 亚洲国产精品久久男人天堂| 欧美+亚洲+日韩+国产| 一级作爱视频免费观看| 亚洲va日本ⅴa欧美va伊人久久| 天堂动漫精品| 成年女人毛片免费观看观看9| 午夜影院日韩av| 高清毛片免费观看视频网站| 在线播放无遮挡| 一级a爱片免费观看的视频| 免费搜索国产男女视频| 亚洲国产精品合色在线| 久久中文看片网| 18禁黄网站禁片午夜丰满| 熟妇人妻久久中文字幕3abv| 高清日韩中文字幕在线| 黄色丝袜av网址大全| 日韩欧美国产一区二区入口| 久久久久久久精品吃奶| 精品人妻一区二区三区麻豆 | avwww免费| 国产精品亚洲av一区麻豆| 此物有八面人人有两片| 少妇人妻精品综合一区二区 | 亚洲成人久久性| 国产精品亚洲av一区麻豆| 人人妻,人人澡人人爽秒播| 一级黄片播放器| 久久精品国产亚洲av香蕉五月| 成年女人毛片免费观看观看9| 亚洲乱码一区二区免费版| 日韩欧美国产在线观看| 亚洲综合色惰| 中文字幕高清在线视频| 亚洲av日韩精品久久久久久密| 欧美最黄视频在线播放免费| 亚洲七黄色美女视频| 色5月婷婷丁香| 深夜精品福利| 99国产精品一区二区三区| 日韩欧美免费精品| 亚洲电影在线观看av| 给我免费播放毛片高清在线观看| av福利片在线观看| 日韩欧美精品免费久久 | 国产野战对白在线观看| 在线看三级毛片| 国产三级在线视频| 日本一本二区三区精品| 免费高清视频大片| 国产熟女xx| 性色av乱码一区二区三区2| 久久精品国产亚洲av涩爱 | 日韩亚洲欧美综合| 精品一区二区三区人妻视频| 91麻豆av在线| 久久精品国产自在天天线| 看免费av毛片| 综合色av麻豆| 午夜视频国产福利| 久久久久国内视频| 亚洲中文字幕日韩| 亚洲精品456在线播放app | 自拍偷自拍亚洲精品老妇| 免费在线观看亚洲国产| 宅男免费午夜| 午夜精品一区二区三区免费看| 狠狠狠狠99中文字幕| 老熟妇乱子伦视频在线观看| 简卡轻食公司| 男人舔奶头视频| 亚洲av不卡在线观看| 国产高清激情床上av| 成人亚洲精品av一区二区| 国产三级黄色录像| 久久久久久久久中文| 十八禁人妻一区二区| 精品一区二区三区人妻视频| 一卡2卡三卡四卡精品乱码亚洲| 久久精品国产亚洲av香蕉五月| 精品久久久久久久人妻蜜臀av| 18禁在线播放成人免费| 国产av麻豆久久久久久久| 91久久精品国产一区二区成人| 在线天堂最新版资源| 日本黄色片子视频| 少妇被粗大猛烈的视频| 国产在线男女| 国产精品精品国产色婷婷| 真人做人爱边吃奶动态| av在线天堂中文字幕| 色综合婷婷激情| 亚洲五月婷婷丁香| 成人av一区二区三区在线看| 99热这里只有精品一区| 一进一出好大好爽视频| 搡老熟女国产l中国老女人| 69人妻影院| 两性午夜刺激爽爽歪歪视频在线观看| 亚洲黑人精品在线| 婷婷亚洲欧美| 日本撒尿小便嘘嘘汇集6| 无遮挡黄片免费观看| 免费人成在线观看视频色| 淫秽高清视频在线观看| 亚洲人成网站在线播放欧美日韩| 国产精华一区二区三区| 精华霜和精华液先用哪个| 51国产日韩欧美| 成人国产综合亚洲| 国产精品精品国产色婷婷| 成熟少妇高潮喷水视频| 香蕉av资源在线| 老司机午夜福利在线观看视频| 亚洲av成人不卡在线观看播放网| 日日干狠狠操夜夜爽| 亚洲av五月六月丁香网| 岛国在线免费视频观看| 丰满人妻熟妇乱又伦精品不卡| 国产精品影院久久| 亚洲av免费高清在线观看| 成年版毛片免费区| 国产一区二区亚洲精品在线观看| netflix在线观看网站| 精品久久国产蜜桃| 色5月婷婷丁香| 国产亚洲欧美在线一区二区|