• <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

    91精品国产国语对白视频| 国产不卡av网站在线观看| 成人毛片60女人毛片免费| 亚洲欧美精品自产自拍| www.色视频.com| 丰满迷人的少妇在线观看| 人妻人人澡人人爽人人| 亚洲少妇的诱惑av| 久久女婷五月综合色啪小说| av福利片在线| 久久综合国产亚洲精品| 国产69精品久久久久777片| 中文字幕久久专区| 永久免费av网站大全| 欧美日韩精品成人综合77777| 欧美少妇被猛烈插入视频| 国语对白做爰xxxⅹ性视频网站| 亚洲精品中文字幕在线视频| 蜜桃在线观看..| 边亲边吃奶的免费视频| 免费不卡的大黄色大毛片视频在线观看| 黄色毛片三级朝国网站| 亚洲精品成人av观看孕妇| 久久久久久久亚洲中文字幕| 亚洲人成77777在线视频| 欧美精品一区二区免费开放| 黄片播放在线免费| 欧美丝袜亚洲另类| 亚洲性久久影院| 美女大奶头黄色视频| 成人国语在线视频| av不卡在线播放| 老熟女久久久| 大陆偷拍与自拍| 26uuu在线亚洲综合色| 亚洲国产精品一区三区| 久久99热6这里只有精品| 免费人成在线观看视频色| 免费av不卡在线播放| 日本色播在线视频| 综合色丁香网| 香蕉精品网在线| 欧美老熟妇乱子伦牲交| 一级,二级,三级黄色视频| 爱豆传媒免费全集在线观看| 在现免费观看毛片| 欧美一级a爱片免费观看看| 人体艺术视频欧美日本| 午夜av观看不卡| 精品一区在线观看国产| 久久精品国产亚洲网站| 色5月婷婷丁香| 国产精品国产三级专区第一集| 啦啦啦在线观看免费高清www| 国产免费一区二区三区四区乱码| 亚洲精品一区蜜桃| 亚洲av二区三区四区| av免费观看日本| 在线观看美女被高潮喷水网站| 人妻系列 视频| 少妇的逼水好多| 久久久久久久久久久久大奶| 免费久久久久久久精品成人欧美视频 | 一本—道久久a久久精品蜜桃钙片| 91精品国产国语对白视频| 亚洲av不卡在线观看| 亚洲国产精品999| 久久久午夜欧美精品| 欧美另类一区| 超碰97精品在线观看| 国产伦理片在线播放av一区| 天天躁夜夜躁狠狠久久av| 日韩三级伦理在线观看| a 毛片基地| 成年女人在线观看亚洲视频| 日韩人妻高清精品专区| 国国产精品蜜臀av免费| 麻豆精品久久久久久蜜桃| 国产精品国产av在线观看| 伊人亚洲综合成人网| 2018国产大陆天天弄谢| 国产精品嫩草影院av在线观看| 亚洲欧美色中文字幕在线| 狠狠婷婷综合久久久久久88av| 99久久中文字幕三级久久日本| 精品卡一卡二卡四卡免费| 久久久久久人妻| 人妻制服诱惑在线中文字幕| 免费播放大片免费观看视频在线观看| 亚洲色图综合在线观看| 日日啪夜夜爽| 国产免费福利视频在线观看| 久久久精品94久久精品| 少妇人妻精品综合一区二区| 国产伦理片在线播放av一区| 国产国语露脸激情在线看| 亚洲精品av麻豆狂野| 亚洲av综合色区一区| 一本一本久久a久久精品综合妖精 国产伦在线观看视频一区 | 国产淫语在线视频| 国产精品偷伦视频观看了| 亚洲欧洲精品一区二区精品久久久 | 午夜影院在线不卡| 亚洲av国产av综合av卡| 日日爽夜夜爽网站| 国产亚洲精品第一综合不卡 | 18禁裸乳无遮挡动漫免费视频| 人妻人人澡人人爽人人| 免费人成在线观看视频色| 久久久久久久久久久久大奶| 久久久久久久精品精品| 99久久人妻综合| 免费av不卡在线播放| 亚洲av.av天堂| 久久国内精品自在自线图片| 免费少妇av软件| 亚洲欧美精品自产自拍| 男女高潮啪啪啪动态图| 亚洲国产欧美日韩在线播放| 黄色配什么色好看| 久久久久久伊人网av| 精品国产国语对白av| 免费黄频网站在线观看国产| 久久免费观看电影| 中国国产av一级| 另类精品久久| 久久国产精品大桥未久av| 美女国产视频在线观看| 亚洲av免费高清在线观看| 妹子高潮喷水视频| 国产成人精品福利久久| 国产欧美另类精品又又久久亚洲欧美| 国产 精品1| 亚洲丝袜综合中文字幕| 大香蕉久久成人网| 好男人视频免费观看在线| 久久久久久久国产电影| 永久免费av网站大全| av一本久久久久| 免费黄色在线免费观看| 亚洲中文av在线| 亚洲av男天堂| 国产 精品1| 国产成人午夜福利电影在线观看| 亚洲天堂av无毛| 亚洲,一卡二卡三卡| 熟妇人妻不卡中文字幕| 国产免费福利视频在线观看| 国产高清国产精品国产三级| 久久久久久久国产电影| 美女脱内裤让男人舔精品视频| 各种免费的搞黄视频| 水蜜桃什么品种好| 久久亚洲国产成人精品v| 五月伊人婷婷丁香| 中文字幕精品免费在线观看视频 | 永久网站在线| 日韩av免费高清视频| 久久精品夜色国产| 一个人看视频在线观看www免费| 3wmmmm亚洲av在线观看| videossex国产| 夜夜爽夜夜爽视频| 欧美人与性动交α欧美精品济南到 | 夫妻性生交免费视频一级片| 日韩av免费高清视频| 亚洲五月色婷婷综合| 亚洲久久久国产精品| 欧美bdsm另类| 精品一区二区三区视频在线| 成年人免费黄色播放视频| 精品国产一区二区久久| 人妻少妇偷人精品九色| www.av在线官网国产| 精品一区二区免费观看| 少妇 在线观看| 国产探花极品一区二区| 黑人高潮一二区| 国产精品99久久99久久久不卡 | 观看美女的网站| 久久精品国产亚洲av天美| 久久人妻熟女aⅴ| 夫妻午夜视频| 蜜桃久久精品国产亚洲av| 夫妻性生交免费视频一级片| 久久ye,这里只有精品| 成人二区视频| 高清黄色对白视频在线免费看| 免费av中文字幕在线| 国产69精品久久久久777片| 女人久久www免费人成看片| 亚洲精品乱久久久久久| 日本黄色片子视频| 你懂的网址亚洲精品在线观看| 一级片'在线观看视频| 狂野欧美白嫩少妇大欣赏| 高清视频免费观看一区二区| 国产一区亚洲一区在线观看| 美女视频免费永久观看网站| av.在线天堂| 亚洲欧洲精品一区二区精品久久久 | 在线播放无遮挡| 3wmmmm亚洲av在线观看| 简卡轻食公司| 成人亚洲精品一区在线观看| 国产男女内射视频| 国产亚洲一区二区精品| 满18在线观看网站| 久久久久久久精品精品| 在线观看免费视频网站a站| 只有这里有精品99| 亚洲综合精品二区| av视频免费观看在线观看| 交换朋友夫妻互换小说| 日韩中文字幕视频在线看片| 成人二区视频| 大香蕉久久网| 国产一区二区在线观看av| 五月天丁香电影| 亚洲,欧美,日韩| 亚洲国产av新网站| 精品一区二区三区视频在线| 久久久久久久久久久免费av| 搡老乐熟女国产| 亚洲图色成人| 免费人妻精品一区二区三区视频| 大香蕉97超碰在线| 人妻一区二区av| 精品一区二区免费观看| 免费看av在线观看网站| 永久免费av网站大全| 国产高清有码在线观看视频| 日韩一区二区视频免费看| 99热国产这里只有精品6| 国产老妇伦熟女老妇高清| 尾随美女入室| 大片电影免费在线观看免费| 国产欧美日韩一区二区三区在线 | 国产乱来视频区| 亚洲成色77777| 国产国拍精品亚洲av在线观看| 亚洲精品中文字幕在线视频| 久久久久久久久久久久大奶| 毛片一级片免费看久久久久| 欧美激情 高清一区二区三区| 亚洲怡红院男人天堂| a 毛片基地| 欧美激情极品国产一区二区三区 | 日本欧美国产在线视频| 人妻制服诱惑在线中文字幕| 91久久精品国产一区二区三区| 久久精品国产a三级三级三级| 男女啪啪激烈高潮av片| 午夜福利影视在线免费观看| 久久鲁丝午夜福利片| 五月玫瑰六月丁香| 中文字幕制服av| 男女免费视频国产| 男男h啪啪无遮挡| 一区二区日韩欧美中文字幕 | 97超视频在线观看视频| 天堂俺去俺来也www色官网| 大陆偷拍与自拍| 成人漫画全彩无遮挡| 91成人精品电影| 蜜臀久久99精品久久宅男| 一区二区三区乱码不卡18| 国产精品人妻久久久久久| 美女国产视频在线观看| 超碰97精品在线观看| 永久网站在线| 在线观看免费高清a一片| 日韩电影二区| 黄色配什么色好看| 制服人妻中文乱码| 一个人免费看片子| 搡女人真爽免费视频火全软件| 最近2019中文字幕mv第一页| 国产男女超爽视频在线观看| 国产高清国产精品国产三级| 日韩电影二区| 中国三级夫妇交换| 亚洲精品乱码久久久v下载方式| 日韩av不卡免费在线播放| 91精品伊人久久大香线蕉| 赤兔流量卡办理| 一区二区av电影网| 91精品国产九色| 男女边摸边吃奶| 午夜91福利影院| 热99久久久久精品小说推荐| 日韩三级伦理在线观看| 乱码一卡2卡4卡精品| 国产精品偷伦视频观看了| 男人爽女人下面视频在线观看| 国产精品.久久久| 欧美少妇被猛烈插入视频| 国产亚洲av片在线观看秒播厂| 亚洲色图 男人天堂 中文字幕 | 国产一级毛片在线| 男女啪啪激烈高潮av片| 热99国产精品久久久久久7| 久久精品国产亚洲av涩爱| 一级片'在线观看视频| 欧美成人午夜免费资源| 哪个播放器可以免费观看大片| 五月天丁香电影| 成人亚洲精品一区在线观看| 亚洲情色 制服丝袜| 在线观看一区二区三区激情| 亚洲美女视频黄频| 久久久久久久大尺度免费视频| 这个男人来自地球电影免费观看 | 天天操日日干夜夜撸| 国产精品久久久久久av不卡| 亚洲精品一二三| 精品午夜福利在线看| 国产欧美日韩一区二区三区在线 | 九九爱精品视频在线观看| 男女边摸边吃奶| 午夜老司机福利剧场| 18+在线观看网站| 国产亚洲欧美精品永久| 少妇精品久久久久久久| 少妇人妻 视频| 少妇熟女欧美另类| 一级,二级,三级黄色视频| 亚洲av免费高清在线观看| 国产免费现黄频在线看| 人人妻人人添人人爽欧美一区卜| 尾随美女入室| 亚洲精品国产色婷婷电影| 亚洲第一av免费看| 一级毛片 在线播放| 在线亚洲精品国产二区图片欧美 | 蜜桃久久精品国产亚洲av| 欧美日韩成人在线一区二区| 简卡轻食公司| 国产成人精品无人区| 久久97久久精品| 久久亚洲国产成人精品v| 少妇的逼好多水| 91成人精品电影| 国产极品粉嫩免费观看在线 | 中文天堂在线官网| 五月天丁香电影| 最近中文字幕2019免费版| av国产精品久久久久影院| 午夜免费男女啪啪视频观看| 2018国产大陆天天弄谢| 亚洲丝袜综合中文字幕| 大片电影免费在线观看免费| 免费少妇av软件| 久久久久久伊人网av| 中文字幕制服av| 中文欧美无线码| 少妇 在线观看| 国产女主播在线喷水免费视频网站| 嫩草影院入口| videosex国产| 久久国产亚洲av麻豆专区| 欧美人与善性xxx| 色哟哟·www| 午夜影院在线不卡| 亚州av有码| 精品亚洲乱码少妇综合久久| 亚洲国产精品专区欧美| 亚洲不卡免费看| 哪个播放器可以免费观看大片| 国产精品久久久久久精品电影小说| 全区人妻精品视频| 午夜91福利影院| 日韩熟女老妇一区二区性免费视频| 日韩成人av中文字幕在线观看| 国产又色又爽无遮挡免| 97在线视频观看| 久久精品熟女亚洲av麻豆精品| 女人精品久久久久毛片| 丁香六月天网| 日日撸夜夜添| 在线观看人妻少妇| 国产一区亚洲一区在线观看| 欧美一级a爱片免费观看看| 亚洲av福利一区| 天天影视国产精品| 国产精品免费大片| 另类亚洲欧美激情| 亚洲情色 制服丝袜| 亚洲国产精品999| 青春草亚洲视频在线观看| 国产精品不卡视频一区二区| 日韩成人av中文字幕在线观看| 99国产精品免费福利视频| 观看美女的网站| 久久久久国产网址| 欧美日韩国产mv在线观看视频| 欧美日韩综合久久久久久| 欧美日韩国产mv在线观看视频| 国产av码专区亚洲av| 高清欧美精品videossex| 中文字幕人妻丝袜制服| 国产精品一区www在线观看| 日韩人妻高清精品专区| 啦啦啦啦在线视频资源| 日韩伦理黄色片| 亚洲精品乱码久久久v下载方式| 亚洲伊人久久精品综合| 国产成人精品一,二区| 九色成人免费人妻av| 国产一区有黄有色的免费视频| 亚洲综合色网址| 精品视频人人做人人爽| 青春草亚洲视频在线观看| 99国产精品免费福利视频| 日日爽夜夜爽网站| 国产有黄有色有爽视频| 在线 av 中文字幕| 亚洲一区二区三区欧美精品| 蜜桃国产av成人99| 精品久久久久久电影网| 国产色爽女视频免费观看| 日韩三级伦理在线观看| 80岁老熟妇乱子伦牲交| 美女xxoo啪啪120秒动态图| 精品少妇黑人巨大在线播放| 热re99久久国产66热| 在线天堂最新版资源| 国内精品宾馆在线| 男女啪啪激烈高潮av片| 嘟嘟电影网在线观看| av免费观看日本| 99热这里只有精品一区| 国产熟女午夜一区二区三区 | 另类亚洲欧美激情| 天堂8中文在线网| 伦理电影大哥的女人| 久久影院123| 中文字幕久久专区| 9色porny在线观看| 一级毛片aaaaaa免费看小| 国产视频首页在线观看| 国产午夜精品一二区理论片| 人人妻人人添人人爽欧美一区卜| 日韩成人伦理影院| 国精品久久久久久国模美| 18+在线观看网站| 精品午夜福利在线看| 两个人免费观看高清视频| 国产成人精品婷婷| 日日摸夜夜添夜夜添av毛片| 91久久精品国产一区二区三区| 99re6热这里在线精品视频| 多毛熟女@视频| 一级爰片在线观看| 亚洲精品国产色婷婷电影| 欧美97在线视频| 亚洲精品色激情综合| 十八禁高潮呻吟视频| 色婷婷av一区二区三区视频| 久久久久网色| 国产精品久久久久久久电影| 大片免费播放器 马上看| 精品人妻熟女毛片av久久网站| av卡一久久| 国产欧美亚洲国产| 午夜老司机福利剧场| 久久久久国产网址| 亚洲国产最新在线播放| 十八禁网站网址无遮挡| 精品久久蜜臀av无| 久久久精品免费免费高清| 成人国产av品久久久| 免费观看性生交大片5| 美女中出高潮动态图| 狂野欧美激情性xxxx在线观看| 人妻 亚洲 视频| 天美传媒精品一区二区| 麻豆成人av视频| 黄色怎么调成土黄色| 亚洲国产日韩一区二区| 丰满迷人的少妇在线观看| 久久久久久久久久久免费av| 少妇猛男粗大的猛烈进出视频| 日本免费在线观看一区| 一级毛片我不卡| 国产欧美亚洲国产| 美女福利国产在线| 欧美+日韩+精品| 丰满少妇做爰视频| 高清午夜精品一区二区三区| 秋霞在线观看毛片| 中文欧美无线码| 精品人妻一区二区三区麻豆| 亚洲怡红院男人天堂| 精品一品国产午夜福利视频| 精品久久国产蜜桃| 亚洲在久久综合| 久久影院123| 免费av不卡在线播放| 午夜91福利影院| 日韩一本色道免费dvd| 免费黄色在线免费观看| 亚洲精品自拍成人| 国产在线一区二区三区精| 亚洲av成人精品一二三区| 一个人免费看片子| 久久久国产一区二区| 精品少妇黑人巨大在线播放| 中文字幕av电影在线播放| 大话2 男鬼变身卡| av电影中文网址| 免费高清在线观看视频在线观看| 建设人人有责人人尽责人人享有的| 一区二区av电影网| 高清在线视频一区二区三区| 亚洲国产av新网站| 女的被弄到高潮叫床怎么办| 母亲3免费完整高清在线观看 | 色网站视频免费| 制服人妻中文乱码| 国产精品99久久久久久久久| 亚洲综合色网址| 亚洲不卡免费看| 亚洲怡红院男人天堂| 婷婷成人精品国产| 九九在线视频观看精品| 亚洲精品久久午夜乱码| 人妻 亚洲 视频| 成人国语在线视频| 中文字幕制服av| 欧美bdsm另类| 最近的中文字幕免费完整| 欧美老熟妇乱子伦牲交| 亚洲情色 制服丝袜| 夜夜看夜夜爽夜夜摸| 亚洲四区av| 亚洲天堂av无毛| 乱人伦中国视频| 久久ye,这里只有精品| 日日摸夜夜添夜夜添av毛片| 亚洲精品国产av成人精品| 高清黄色对白视频在线免费看| 婷婷色av中文字幕| 日韩不卡一区二区三区视频在线| 人妻 亚洲 视频| 丰满乱子伦码专区| .国产精品久久| av不卡在线播放| 哪个播放器可以免费观看大片| 九九爱精品视频在线观看| 日韩制服骚丝袜av| 国产精品国产av在线观看| 成人影院久久| 99精国产麻豆久久婷婷| 国产老妇伦熟女老妇高清| 3wmmmm亚洲av在线观看| 自线自在国产av| 亚洲精品国产色婷婷电影| a级片在线免费高清观看视频| 一区二区三区乱码不卡18| av.在线天堂| 久热久热在线精品观看| 日韩精品有码人妻一区| 亚洲精品成人av观看孕妇| 久久99精品国语久久久| 九色亚洲精品在线播放| 亚洲色图 男人天堂 中文字幕 | 麻豆乱淫一区二区| 美女主播在线视频| 精品人妻在线不人妻| 国产亚洲最大av| 99精国产麻豆久久婷婷| 韩国高清视频一区二区三区| 视频区图区小说| 两个人免费观看高清视频| 91久久精品国产一区二区三区| 国产有黄有色有爽视频| 香蕉精品网在线| 女人精品久久久久毛片| 亚洲在久久综合| 国产精品一区www在线观看| freevideosex欧美| 国产一区有黄有色的免费视频| 人人妻人人添人人爽欧美一区卜| 精品国产一区二区三区久久久樱花| 欧美丝袜亚洲另类| 九九久久精品国产亚洲av麻豆| 蜜桃在线观看..| 免费av中文字幕在线| 99精国产麻豆久久婷婷| 成人二区视频| 日日撸夜夜添| 欧美日本中文国产一区发布| 51国产日韩欧美| 国产精品偷伦视频观看了| 伊人久久国产一区二区| 黑人猛操日本美女一级片| 亚洲,欧美,日韩| 丝袜脚勾引网站| 亚洲av.av天堂| 国产av一区二区精品久久| 最近手机中文字幕大全| 少妇被粗大猛烈的视频| 欧美精品高潮呻吟av久久| 国产高清有码在线观看视频| 边亲边吃奶的免费视频| 欧美 日韩 精品 国产| 亚洲欧洲精品一区二区精品久久久 | 亚洲第一av免费看| av一本久久久久| 国产成人精品久久久久久| 在线免费观看不下载黄p国产| 97超视频在线观看视频| 18+在线观看网站| 亚洲精品日本国产第一区|