国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于分布式的電商平臺(tái)搭建方法

2017-07-18 11:47:37蔣勇孫旭成都理工大學(xué)信息科學(xué)與技術(shù)學(xué)院
數(shù)碼世界 2017年6期
關(guān)鍵詞:高可用性調(diào)用視圖

蔣勇 孫旭 成都理工大學(xué)信息科學(xué)與技術(shù)學(xué)院

基于分布式的電商平臺(tái)搭建方法

蔣勇 孫旭 成都理工大學(xué)信息科學(xué)與技術(shù)學(xué)院

B2B電子商務(wù)即企業(yè)對(duì)企業(yè)的電子商務(wù),也稱批發(fā)電子商務(wù)。電子商務(wù)的涉及面十分廣泛,電子商務(wù)給我們的生活提供了各種便利,一個(gè)實(shí)現(xiàn)良好的B2B電子商務(wù)平臺(tái)必須具備高可靠性、高可擴(kuò)展性、高可用性、高度透明的分布性、高度異構(gòu)性、高度模塊化和可重用性。本文主要討論基于Zookeeper,Dubbo的分布式系統(tǒng)下的B2B平臺(tái)構(gòu)建方法,闡述了本系統(tǒng)的構(gòu)架及其工作原理,及其特性;論述了本系統(tǒng)構(gòu)架的搭建方法,運(yùn)行結(jié)果說(shuō)明了開(kāi)發(fā)方法的效果。

分布式 電商平臺(tái) B2B

1 分布式技術(shù)概述

ZooKeeper是一個(gè)為分布式應(yīng)用程序提供高性能協(xié)調(diào)服務(wù)的工具集合,是著名的開(kāi)源框架Hadoop的子項(xiàng)目。Zookeeper具有簡(jiǎn)單、易表達(dá)、高可用性、松耦合交互等特性,并且Zookeeper為開(kāi)發(fā)人員提供了一套豐富的API,減輕了開(kāi)發(fā)人員編寫通用協(xié)議的負(fù)擔(dān)。Dubbo是Alibaba開(kāi)源的分布式服務(wù)框架,它最大的特點(diǎn)是按照分層的方式來(lái)架構(gòu),使用這種方式可以使各個(gè)層之間解耦合(或者最大限度地松耦合),可以和Spring框架無(wú)縫集成,目前在構(gòu)建大型分布式網(wǎng)站方面使用廣泛。本系統(tǒng)在邏輯設(shè)計(jì)上采用多層的分布式應(yīng)用模型,應(yīng)用邏輯按功能劃分為組建各個(gè)應(yīng)用組件根據(jù)它們所在的層分布在不同的服務(wù)器上。本文章設(shè)計(jì)的B2B電子商務(wù)平臺(tái)采用MVC設(shè)計(jì)思想,MVC英文即Model-View-Controller,即把一個(gè)應(yīng)用的輸入、處理、輸出流程按照Model、View、Controller的方式進(jìn)行分離,這種設(shè)計(jì)模式將整體軟件分為了這3部分,完成了大型軟件系統(tǒng)的松散耦合。在MVC模式中,Web用戶向服務(wù)器提交的所有請(qǐng)求都由控制器接管。接受到請(qǐng)求之后,控制器負(fù)責(zé)決定應(yīng)該調(diào)用哪個(gè)模型來(lái)進(jìn)行處理;然后模型根據(jù)用戶請(qǐng)求進(jìn)行相應(yīng)的業(yè)務(wù)邏輯處理,并返回?cái)?shù)據(jù);最后控制器調(diào)用相應(yīng)的視圖來(lái)格式化模型返回的數(shù)據(jù),并通過(guò)視圖呈現(xiàn)給用戶。系統(tǒng)中控制層使用SpringMV框架,是一種實(shí)現(xiàn)MVC模式的輕量級(jí)Web框架,可以簡(jiǎn)化開(kāi)發(fā)過(guò)程。

2 系統(tǒng)模型架構(gòu)設(shè)計(jì)

本系統(tǒng)的Web平臺(tái)采用多層分布式結(jié)構(gòu),開(kāi)發(fā)環(huán)境:開(kāi)發(fā)工具Eclipse,項(xiàng)目管理工具maven,應(yīng)用服務(wù)器Tomcat6.0,分布式服務(wù)框架ZooKeeper、Dubbo,項(xiàng)目框架SpringMVC,持久層框架IBatis,數(shù)據(jù)庫(kù)oracle。本系統(tǒng)的軟件設(shè)計(jì)架構(gòu)分為了視圖層,服務(wù)層(center層),數(shù)據(jù)存儲(chǔ)層3個(gè)基本層:視圖層,即用戶看到的使用的,這里包括為了Admin、Web(PC端)、Mobile(手機(jī)端)。Admin后臺(tái)管理,主要負(fù)責(zé)對(duì)商品上下架,價(jià)格管理,價(jià)格表管理,價(jià)格表審核,商品審核,用戶賬號(hào)的管理等。數(shù)據(jù)存儲(chǔ)層,B2B的數(shù)據(jù)存儲(chǔ)層主要負(fù)責(zé)對(duì)數(shù)據(jù)的存儲(chǔ)、完成數(shù)據(jù)操作,在本系統(tǒng)中采用集群化的Oracle數(shù)據(jù)庫(kù),在數(shù)據(jù)庫(kù)的設(shè)計(jì)中涉及到分區(qū),分庫(kù)分表,負(fù)載均衡,讀寫分離等負(fù)載操作。服務(wù)層(center層),即業(yè)務(wù)層,是本項(xiàng)目中最為重要的部分。首先用戶在使用本系統(tǒng)的時(shí)候,包括Web(PC端)、Mobile(手機(jī)端),里面的業(yè)務(wù)操作,對(duì)數(shù)據(jù)的操作基本都是一樣的。如果每個(gè)項(xiàng)目端都寫一套業(yè)務(wù)邏輯的話,這時(shí)將會(huì)出現(xiàn)大量的代碼冗余,項(xiàng)目本身的復(fù)雜程度會(huì)增加,開(kāi)發(fā)周期也會(huì)大大增加。于是本項(xiàng)目提出,將admin(后臺(tái)管理)、Web(PC端)、Mobile(手機(jī)端)相同的業(yè)務(wù)服務(wù)層(包括dao層)抽離出來(lái),部署成單獨(dú)的一個(gè)項(xiàng)目,于是center層由此誕生了。Center層的主要作用就是為視圖層的4個(gè)項(xiàng)目做服務(wù),以及包括對(duì)數(shù)據(jù)庫(kù)的操作(dao層)。由于視圖層的4個(gè)項(xiàng)目是獨(dú)立部署在4個(gè)不同的服務(wù)器上的,center層的項(xiàng)目也是獨(dú)立部署在一個(gè)服務(wù)器上的,原來(lái)是相當(dāng)于每個(gè)項(xiàng)目里面都有一個(gè)center層,所以可以直接調(diào)用服務(wù),現(xiàn)在把center層單獨(dú)部署成一個(gè)項(xiàng)目,視圖層的4個(gè)項(xiàng)目如何來(lái)調(diào)用center層的業(yè)務(wù)服務(wù),就成了一個(gè)問(wèn)題。本系統(tǒng)的解決方案是,采用分布式部署,利用分布式框架dubbo,服務(wù)注冊(cè)中心ZooKeeper來(lái)完成調(diào)用。首先將center層,使用maven工具,打包成jar包的形式,放在4個(gè)項(xiàng)目的下面,將需要調(diào)用的服務(wù)向注冊(cè)中心ZooKeeper索要。Center層所有的服務(wù)也將會(huì)通過(guò)注冊(cè)中心ZooKeeper發(fā)布出去,這樣就順利的完成了視圖層對(duì)center層調(diào)用。具體流程如圖2-1:

圖2-1 系統(tǒng)流程

3 結(jié)論

通過(guò)對(duì)分布式系統(tǒng)的討論,我們的視圖層的3個(gè)項(xiàng)目可以共享Center層的服務(wù),調(diào)用同一個(gè)方法來(lái)完成頁(yè)面上的操作。如果將來(lái),我們想在這個(gè)系統(tǒng)的基礎(chǔ)上再增加一個(gè)項(xiàng)目,比如開(kāi)發(fā)微信端,只需建一個(gè)視圖層的項(xiàng)目,就可以直接調(diào)用Center的服務(wù),這將大大減少代碼的冗余,縮短開(kāi)發(fā)新項(xiàng)目的時(shí)間,給開(kāi)發(fā)人員帶來(lái)很大的便利。通過(guò)探討本文提出的分布式框架的模型,我們看出分布式的高可擴(kuò)展性、高可用性,給以后開(kāi)發(fā)新系統(tǒng)帶來(lái)很大的便利,現(xiàn)如今,互聯(lián)網(wǎng)與電子商務(wù)在我國(guó)仍將高效的發(fā)展,一個(gè)具備高可擴(kuò)展性、高可用性的分布性系統(tǒng)越來(lái)越重要。但是隨著用戶量的增加,系統(tǒng)對(duì)大量數(shù)據(jù)處理的性能要求也會(huì)越來(lái)越高,這就要求按照需求的變化開(kāi)發(fā)新的業(yè)務(wù)邏輯組件,同時(shí)完善已部署在系統(tǒng)的功能組件,提供組件的通用性,所以設(shè)計(jì)細(xì)節(jié)還要進(jìn)一步學(xué)習(xí),相信在經(jīng)過(guò)不斷的完善,原型系統(tǒng)一定會(huì)越來(lái)越完美!

[1]梁金月.我國(guó)電子商務(wù)B2B現(xiàn)狀及趨勢(shì)[J].中國(guó)流通經(jīng)濟(jì),2000,增刊:36-37

[2]李永強(qiáng),岑衍強(qiáng).基于J2EE的多層、分布式企業(yè)應(yīng)用軟件系統(tǒng)[J],微計(jì)算機(jī)應(yīng)用,2001,22(5)

[3]謝璐俊,楊鶴彪.基于Dubbox的分布式服務(wù)架構(gòu)設(shè)計(jì)與實(shí)現(xiàn)[J].軟件導(dǎo)刊,2016.5,Vol.15No.5:13-15

[4]瞿裕忠.電子商務(wù)應(yīng)用開(kāi)發(fā)技術(shù)[M],北京:高等教育出版社,2000

猜你喜歡
高可用性調(diào)用視圖
分布式數(shù)據(jù)庫(kù)提升醫(yī)院信息系統(tǒng)高可用性的應(yīng)用研究
核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
超長(zhǎng)公路隧橋高可用性監(jiān)控平臺(tái)方案分析
5.3 視圖與投影
視圖
Y—20重型運(yùn)輸機(jī)多視圖
SA2型76毫米車載高炮多視圖
基于系統(tǒng)調(diào)用的惡意軟件檢測(cè)技術(shù)研究
校園一卡通服務(wù)端高可用性改造實(shí)施方案
阿克陶县| 禹城市| 信阳市| 漳州市| 平顺县| 会同县| 宝鸡市| 勃利县| 马鞍山市| 阿拉善盟| 静乐县| 长顺县| 济阳县| 浑源县| 忻城县| 星座| 河东区| 常州市| 桂林市| 巴楚县| 日土县| 南投县| 阿尔山市| 苏尼特左旗| 腾冲县| 奎屯市| 黑水县| 南澳县| 青州市| 唐山市| 平塘县| 崇明县| 永宁县| 宜春市| 肃北| 南充市| 北安市| 淮滨县| 内乡县| 邳州市| 临泽县|