亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于SOA架構(gòu)的互聯(lián)網(wǎng)商城的設計與研發(fā)

        2019-09-10 03:53:06張宇劉德磊趙明浩丁逸凡張淑婧
        電子商務 2019年11期
        關(guān)鍵詞:電子商務

        張宇 劉德磊 趙明浩 丁逸凡 張淑婧

        摘要:作為電子行業(yè)的新興產(chǎn)業(yè),電子商務近年來發(fā)展迅猛,截至2018年底,中國B2B電子商務的市場交易規(guī)模累計產(chǎn)值增額達到118.9萬億,約占電子行業(yè)產(chǎn)值總額的62.3%,同比增額18.6%。本課題主要針對供給綜合的主流B2B2C電商模式的平臺建設和.NET的研究與應用,千萬量級數(shù)據(jù)的企業(yè)級搜索,快速存儲以及高并發(fā)的關(guān)鍵難題,構(gòu)建一套完整的基于分布式與SOA組合架構(gòu)。實現(xiàn)存儲分布式,集群容器于一體的多功能互聯(lián)網(wǎng)商城,可擴展與高并發(fā)高性能的電子商務平臺。

        關(guān)鍵詞:電子商務;SOA架構(gòu);B2B2C模式;企業(yè)級搜索;分布式緩存;.NET;集群容器

        引言

        隨著電子行業(yè)的新興發(fā)展與國家政策的開放支持,電子行業(yè)擁有巨大的市場前景與發(fā)展空間,同時,國家出臺多項法令法規(guī),保障第三方平臺與消費者的利益與權(quán)益,營造更為健康,安全,便捷,規(guī)范的電子行業(yè)的行業(yè)環(huán)境,本課題主要基于分布式SOA框架的互聯(lián)網(wǎng)商城的設計優(yōu)化以及關(guān)鍵技術(shù)的應用研究,主要研究內(nèi)容包括:

        (1) 分布式架構(gòu)(Dubbox)的研究應用與SOA(面向服務的架構(gòu))整合優(yōu)化。

        (2) 搜索引擎的技術(shù)選型,消息中間件與消息隊列的應用構(gòu)架,網(wǎng)頁頁面靜態(tài)化方案,非關(guān)系型(Nosql)數(shù)據(jù)庫技術(shù)的應用,減少數(shù)據(jù)庫訪問壓力,對海量數(shù)據(jù)及非結(jié)構(gòu)化數(shù)據(jù)的管理與快速搜索(key-value)。

        (3) Http反向代理服務器(Nginx),容器部署解決方案(Docker),服務器集群的搭建與部署。

        (4) DFS(分布式文件系統(tǒng))和CAS(單點登錄系統(tǒng))的嵌入與整合,提高資源訪問率與商務平臺的安全性與可靠性。

        (5) 電子商務:秒殺服務,用戶中心,評價服務,購物車功能,短信服務,支付服務等互聯(lián)網(wǎng)商城的關(guān)鍵技術(shù)與復雜邏輯服務的設計與實現(xiàn)。

        針對互聯(lián)網(wǎng)商城的特性,依據(jù)當前電商行業(yè)的運作模式,選擇合適的高性能的電商開發(fā)技術(shù),使得整個互聯(lián)網(wǎng)商城面向低耦合高內(nèi)聚,接口隔離,單一職責,依賴倒置等設計模式等基本原則,提升商城平臺的可復用性和實用性。

        1、系統(tǒng)設計

        電子商務互聯(lián)網(wǎng)商城的業(yè)務邏輯復雜,各個模塊之間調(diào)度關(guān)系緊密,數(shù)據(jù)庫訪問量大,為了符合軟件設計的“低耦合高內(nèi)聚,接口隔離,單一職責,開放封閉”的原則,準確,可逆的科技工作流模塊支持,良好的開放性和擴展性,本課題互聯(lián)網(wǎng)商城采用Dubbox分布式架構(gòu)作為前端控制層和服務層交互的中介,Dubbox架構(gòu)符合SSM設計原則,也是目前主流的框架集,實現(xiàn)邏輯功能和前端顯示交互的分離。對于關(guān)系型數(shù)據(jù)庫MySQL采用數(shù)據(jù)庫中間件MyCat控制與管理,在數(shù)據(jù)庫服務器Linux上搭建主從分布式集群Nginx,RedisCluster,SolrCloud,容器部署Docker,主備服務器模式確保服務器的安全性與可靠性,投票選舉機制與集群分片完善集群運行機制,消息中間件ActiveMQ負責調(diào)度短信微服務和頁面生成服務,與Redis協(xié)同完成搜索服務的調(diào)用與數(shù)據(jù)返回。ActiveMQ負責消息傳遞和任務調(diào)度,減輕數(shù)據(jù)庫的訪問量。本課題只針對互聯(lián)網(wǎng)商城關(guān)鍵模塊(如圖1所示)的設計實現(xiàn)與較復雜的模塊服務邏輯功能研究與剖析與技術(shù)選型,并對商城整體思路的流程控制與技術(shù)整合優(yōu)化。

        系統(tǒng)架構(gòu)各部分說明如圖1所示:

        (1) 表現(xiàn)層(Web層)

        Web層主要是負責前端頁面的顯示,用戶與商家,運營商交互的頁面,主要以html5為基礎,angularJS為前端參數(shù)動態(tài)綁定與邏輯服務處理,接收服務層參數(shù)并封裝調(diào)用,F(xiàn)reemarker生成靜態(tài)化頁面,實現(xiàn)動態(tài)與靜態(tài)的整合與交互。

        (2) 服務層(Service層)

        作為連接前端與數(shù)據(jù)庫的中介,服務層主要負責單一職責的功能邏輯處理,與前端顯示和控制分離,負責實例化模塊類,通過調(diào)用dao層的逆向工程和數(shù)據(jù)映射產(chǎn)生的表數(shù)據(jù)對象,完成對數(shù)據(jù)庫或索引庫的查詢,并將參數(shù)數(shù)據(jù)結(jié)果返回給前端。

        (3)數(shù)據(jù)層(數(shù)據(jù)庫)

        數(shù)據(jù)層不涉及邏輯業(yè)務的操作,由硬件或軟件服務器以及數(shù)據(jù)庫服務器,企業(yè)級搜索引擎SolrCloud以及消息中間件ActiveMQ和Docker容器等集群組成,在Linux系統(tǒng)上完成部署和配置,完成對海量商品數(shù)據(jù)的存儲和訪問,按照性能要求存儲數(shù)據(jù),直接訪問物理內(nèi)存,減緩數(shù)據(jù)庫查詢壓力,提升訪問速率。

        2、系統(tǒng)研發(fā)與優(yōu)化

        2.1 系統(tǒng)開發(fā)及其運行環(huán)境

        本課題在多次調(diào)試運行后,本課題最終采用的系統(tǒng)開發(fā)運行環(huán)境如表1所示:

        2.2 系統(tǒng)關(guān)鍵技術(shù)實現(xiàn)

        2.2.1 消息中間件JMS實現(xiàn)與ActiveMQ整合流程

        (1) JMS工作原理

        JMS是Java平臺提供的廠商執(zhí)行標準的消息傳遞API接口,用來定義一個客戶機向另一個客戶機消息傳遞的標準規(guī)范,進行分布式和異步通信,傳遞路由信息和元信息參數(shù),并且提供了優(yōu)先于普通消息的傳遞優(yōu)先級路線,完成消息傳遞。JMS提供了物種消息傳遞類型機制,根據(jù)不同的消息類型機制可以對一般和特殊數(shù)據(jù)消息傳遞:

        課題中涉及的類型模板表單數(shù)據(jù),需采用MapMessage封裝并傳遞Json數(shù)據(jù),品牌,訂單,規(guī)格和首頁輪播涉及的表單數(shù)據(jù)采用TextMessage傳遞參數(shù),商品表數(shù)據(jù)采用ObjectMessage類型傳遞序列化對象實例。

        (2) JMS與ActiveMQ整合流程

        創(chuàng)建連接工廠;獲取連接;啟動連接;獲取session(參數(shù)1:是否啟動事務,參數(shù)2:消息確認模式)。創(chuàng)建主題對象(Queue或Topic);創(chuàng)建消息消費;監(jiān)聽消息;等待鍵盤輸入;關(guān)閉資源。

        在商城平臺JMS和ActiveMQ的開發(fā)整合時,JMS和ActibeMQ的相關(guān)配置和基類注入都交由Spring統(tǒng)一管理,Xml文件中配置Spring提供的JMS服務廠商提供的工具類,其中使用的是JMS模板JmsTemplete及其中的方法進行消息的發(fā)送和接收,配置產(chǎn)生JMS服務的連接工廠和消息監(jiān)聽容器,導入和移除Solr索引庫記錄及搜索服務用到Queue點對點文本隊列模式,對于網(wǎng)頁頁面靜態(tài)化部分,先解除與Dubbox的依賴耦合,修改頁面服務實現(xiàn)類的@Service注解為org. springframework.stereotype.Service包下的@Service注解。調(diào)用MessageCreator()方法返回參數(shù)完成操作,查詢品牌和規(guī)格列表返回map類型的集合結(jié)果給控制層。

        發(fā)送(發(fā)布訂閱),商品詳情頁的索引刪除,商品內(nèi)容上架審核部分。

        2.2.2 搜索引擎(Solr)實現(xiàn)

        數(shù)據(jù)庫服務器(Linux)完成solr環(huán)境的安裝、ik分析器和業(yè)務域的配置。配置solr的本地配置文件倉庫solrhome中的schema.xml文件,設置與數(shù)據(jù)庫商品表單參數(shù)對應的字段復制域和動態(tài)域使用。如果映射存儲值段為imagetype,則將indexed屬性設置為false,將關(guān)鍵字查找域的storage屬性設置為false。(1)紅色設置為閃爍,多值屬性設置為真。在商品對應的構(gòu)造類中,動態(tài)域?qū)臄?shù)據(jù)庫字段配置了@dynamic注解。(2)將solr模板類solrtimplete注入到服務層xml文件中,便于開發(fā)人員使用。(3)商城平臺商品搜索業(yè)務邏輯規(guī)則:用戶輸入搜索關(guān)鍵字時,搜索引擎根據(jù)schema.xml文件的配置的關(guān)鍵字字段,根據(jù)域名搜索數(shù)據(jù)庫,在爬蟲類數(shù)據(jù)中用關(guān)鍵字字段搜索數(shù)據(jù),調(diào)用solr模板類返回所有商品信息。包括商品SPU和包含關(guān)鍵字字段的SKU,并將其顯示到solrhome/ collection1。搜索前端頁面并返回商品的類別和等級。(4)用戶能夠確定商品的價錢范疇。選擇后,商品價格范圍消失。當用戶搜尋數(shù)據(jù)庫品牌稱號的關(guān)鍵字時,品牌選擇范圍將自動消失。注意:在處理關(guān)鍵字搜索時,應將關(guān)鍵字作為空白進行處理,以防止查詢結(jié)果中出現(xiàn)錯誤。

        實現(xiàn)思路:(1)搜索面板的商品分類需要使用SpringDataSolr的分組查詢來實現(xiàn)。(2)為了提高查詢速度,最好提早將查問面板的品牌和規(guī)格的JSON參數(shù)數(shù)據(jù)放入redis。(3)查問條件的結(jié)構(gòu)和面板的顯示和點擊消失需要使用AngularJS完成。(4)后端類別、商品品牌、規(guī)格、價錢區(qū)間查找需要過濾查詢完成。highlight options實現(xiàn)搜索關(guān)鍵字groupoptions的highlight顯示,設置分組選項,完成分類列表查詢功能。grouping entry set list

        Storage服務器集群是文件上傳存儲的最終路徑,文件在Storage生成的子目錄和文件夾中存放,Storage生成的文件路徑采用的是多級分層樹形結(jié)構(gòu),組名/虛擬磁盤路徑/一級目錄(0-256)/二級目錄(0-256)/文件名.sh。.sh是FastDFS存儲文件后綴。

        例:Group1/M00/02/44/wkgDrE82AASFHYTAAAAADKEITY34567.sh。

        需要注意的是,F(xiàn)astDFS有許多優(yōu)化機制,Storage內(nèi)置內(nèi)存合并機制,也稱碎片合并,當碎片內(nèi)存數(shù)量達到一定量時(一般是50個),Storage會優(yōu)化合并碎片,生成新內(nèi)存。

        2.2.4.1 文件上傳和下載流程

        (1)文件上傳流程

        當Tracker容器接收到更新文件的請求時,在Tracker容器中隨機選擇一臺服務器作為TrackerServer,當此Tracker接收到更新文件請求時,服務器會采用輪詢或者組剩余空間多的group作為存儲媒介。接著Tracker服務器會為已選好的group內(nèi)分配一個存儲服務器給用戶,一般采用優(yōu)先級排序,在選擇好文件存儲目錄后,Storage服務器會默認生成二級子目錄和文件名。存儲服務器Storage會定時向Tracker服務器上傳文件存儲的信息狀態(tài),以便于Tracker準確查詢可用的Storage,并將存儲服務器的ip地址的端口號返回給客戶端。服務端上傳文件后存儲服務器將上傳的內(nèi)容寫入對應的磁盤完成存儲。在資源文件中添加fdfs_client.conf,在控制層中添加方法執(zhí)行步驟(1)取文件的擴展名(2)創(chuàng)建一個FastDFS的客戶端(3)執(zhí)行上傳處理(4)拼接返回的url和ip地址,返回前端完整的url。前端AngularJs服務層異步post方法根據(jù)文件名從數(shù)據(jù)庫獲取圖片地址,控制層查找圖片地址并顯示。

        (2)文件下載流程

        當FastDFS執(zhí)行下載文件的操作時,首先由客戶端發(fā)送下載請求鏈接,Tracker從StorageServer上傳來的狀態(tài)信息查詢可用的Storage信息,并檢驗同步狀態(tài),查找完成后向Client發(fā)送Storage的ip地址和端口號??蛻舳讼騍torageServer發(fā)送文件的相關(guān)信息(組名,路徑,文件名)等,StorageServer在內(nèi)存結(jié)構(gòu)中查找匹配對應的文件,如果查找成功,向Client返回文件相關(guān)信息,并提供下載。

        2.2.5 網(wǎng)頁頁面靜態(tài)化實現(xiàn)(Freemarker)

        網(wǎng)頁靜態(tài)化技術(shù)和緩存技術(shù)的共同點都是為了減輕數(shù)據(jù)庫的訪問壓力,但是具體的應用場景不同,緩存比較適合小規(guī)模的數(shù)據(jù),而網(wǎng)頁靜態(tài)化比較適合大規(guī)模且相對變化不太頻繁的數(shù)據(jù),網(wǎng)頁靜態(tài)化還有利于SEO(搜索引擎優(yōu)化),提高搜索顯示性能。

        此技術(shù)實現(xiàn)需要交付ActiveMQ管理,頁面模塊調(diào)用freeMarkerConfigurer獲取配置對象,加載.ftl后綴的模板文件,創(chuàng)建map數(shù)據(jù)模型查詢并添加商品主表,擴展表,分類,SKU數(shù)據(jù),創(chuàng)建監(jiān)聽類生成頁面,模板頁面使用eval將圖片列表Json字符串轉(zhuǎn)換為對象并顯示,顯示購買數(shù)量的加減操作,商品類型面包屑和規(guī)格列表。頁面模塊在運營商管理商品模塊審核通過,商品狀態(tài)從待審核更新為上架,同時商品數(shù)據(jù)導入到索引庫,獲取商品的SKU列表,遍歷商品并將商品列表轉(zhuǎn)換為Json格式傳輸,遍歷商品id并調(diào)用jms模板send方法發(fā)布訂閱產(chǎn)生TextMessage。

        2.3 系統(tǒng)部分功能實現(xiàn)

        2.3.1 首頁展示

        作為互聯(lián)網(wǎng)商城的門戶網(wǎng)站和訪問入口之一,本網(wǎng)站中主要包括的功能有輪播圖展示,條件搜索查詢框,全部商品分類樹形索引,猜你喜歡,近日推薦,主要頻道等如圖2所示。

        (1)用戶點擊全部商品分類時可以看到商品分類的樹形結(jié)構(gòu)詳細商品信息。

        (2)用戶鍵入搜尋內(nèi)容點擊搜尋按鈕時,頁面自動跳轉(zhuǎn)至搜索結(jié)果頁面,調(diào)用索引庫查詢數(shù)據(jù),查詢結(jié)果高亮顯示。耗時在0.5-0.8秒之間,用戶體驗良好。

        (3)用戶點擊首頁圖片時,頁面跳轉(zhuǎn)至商品詳情頁面,用戶無需登錄。

        本課題涉及的網(wǎng)站首頁全部采用AngularJS+html5動靜態(tài)結(jié)合的方式顯示,html5負責顯示頁面主體靜態(tài)框架,AngularJs負責完成參數(shù)從后端到前臺的綁定操作,完成數(shù)據(jù)動態(tài)化。

        2.3.2 商家后臺展示

        商家后臺添加商品基本信息,商品圖片,擴展屬性和商品規(guī)格,修改商家基本信息和登錄密碼等功能,商家后臺只對已經(jīng)入駐商城的商家開放,商家登錄平臺后可以進行相關(guān)操作。

        (1) 商家基本管理:包括商家基本資料的修改和登錄密碼的修改,修改資料包括公司名稱,公司手機,公司電話,公司詳細地址,聯(lián)系人姓名,聯(lián)系人QQ,聯(lián)系人手機,聯(lián)系人email,營業(yè)執(zhí)照號,組織機構(gòu)代碼證,法定代表人,法定代表人身份證號,開戶行姓名,銀行賬號等如圖3所示,點擊保存后數(shù)據(jù)提交更新到數(shù)據(jù)庫。

        (2) 新增商品: 商品基本信息(商品分類3級面包屑分類;商品名稱;品牌(下拉框選擇);價格;商品介紹;包裝列表和售后服務),商品圖片,擴展屬性和商品規(guī)格如圖4所示。

        (3) 商品管理:對商家商品的增刪改查和提交運營商后臺審核基本操作如圖4所示。

        2.3.3 個人中心展示

        個人中心是用戶個人操作的部分,當用戶登錄商城后,商城后臺數(shù)據(jù)庫調(diào)用用戶信息顯示在用戶個人中心,包含用戶名,訂單中心,我的中心,物流消息與設置,訂單中心包括我的訂單,我的中心包括我的收藏和我的足跡,設置包括個人信息,地址管理和安全管理幾大部分如圖5所示。

        網(wǎng)站頁面顯示用戶基本信息,安全退出等選項。

        (1) 我的訂單:顯示已購買商品以及商品SPU(標準化產(chǎn)品單元)基本信息(商品圖片,商品名稱和商品規(guī)格,商品數(shù)量,實付金額和商品狀態(tài)),以及下單付款時間和訂單編號,商家名稱,用戶可以點擊確認收貨或立即付款,點擊立即付款將重定位回訂單結(jié)算頁面 ,點擊確認收貨將跳轉(zhuǎn)到收貨成功頁面。

        (2) 我的收藏:顯示本用戶下收藏的商品基本信息和商品價格變動。

        (3) 地址管理:用戶可以管理收貨地址信息,選擇默認地址以及地址添加和刪除。

        (4) 安全管理:安全管理部分用戶可以更改用戶密碼和支付信息密碼等。

        (5) 頁面分頁顯示,按照下單時間排序。

        3、小結(jié)

        本課題在當今電子商務行業(yè)的良好發(fā)展趨勢下,對互聯(lián)網(wǎng)商城進行整體的思路設計,核心功能開發(fā),實現(xiàn)和優(yōu)化,各個模塊服務之間的邏輯耦合關(guān)系和數(shù)據(jù)庫設計。本課題展示了關(guān)鍵技術(shù)的選型以及部分功能的設計實現(xiàn)。服務器集群和容器部署使得互聯(lián)網(wǎng)商城的整體性能和并發(fā)量訪問量顯著提升,為用戶,商家,運營商提供良好的界面服務和技術(shù)操作,符合當今時代下電商行業(yè)的發(fā)展態(tài)勢。

        參考文獻:

        [1] 張籍元,馬愛霞.醫(yī)藥電子商務B2C模式與O2O模式對比分析[J].中國藥物評價,2017,01:77-80.

        [2] 彭非.B2B電子商務模式在我國的研究現(xiàn)狀及發(fā)展趨勢探析[J].金融經(jīng)濟,2017,04:85-87.

        [3] 謝麗霞,孫偉博.B2C電子商務信息系統(tǒng)操作風險評估方法研究[J].計算機應用與軟件,2016,09:43-35+71.

        [4] 黃曦,張懷君.移動電子商務商業(yè)模式淺談[J].技術(shù)與市場,2016, 08:124+126.

        [5] 耿慧慧,王萍.O2O電子商務顧客滿意度影響因素探究[J]電子商務,2017,02:44-45.

        [6] 邵鵬,胡平.電子商務平臺商業(yè)模式創(chuàng)新與演變的案例研究[J].科研管理,2016,07:81-88.

        [7] 王中鋒.大數(shù)據(jù)時代的電子商務服務模式革新[J].電子商務, 2017,03:18-19.

        [8] 張晶,張珺.電子商務背景下企業(yè)營銷模式的創(chuàng)新方向[J].企業(yè)改革與管理,2017,02:118.

        [9] DericSlavko.ELECTRONIC COMMERCE[J].Economics, 2017,04:38-45.

        [10] RP Osca.conceptualization and research review[J]. Espacios,2017,38(61).

        作者簡介:

        張宇,學士,現(xiàn)就學于山西農(nóng)業(yè)大學軟件學院,主要研究方向為軟件工程,Python;

        劉德磊,副教授,現(xiàn)就職于山西農(nóng)業(yè)大學軟件學院研究生導師,主要研究方向為軟件工程,Java和智能計算機與模式;

        趙明浩,學士,現(xiàn)就學于山西農(nóng)業(yè)大學軟件學院,主要研究方向為軟件工程;

        丁逸凡,學士,現(xiàn)就學于山西農(nóng)業(yè)大學軟件學院,主要研究方向為軟件工程;

        張淑婧,學士,現(xiàn)就學于山西農(nóng)業(yè)大學軟件學院,主要研究方向為軟件工程。

        猜你喜歡
        電子商務
        2025年我國農(nóng)村電子商務交易額達到2.8萬億元
        《電子商務法》如何助力直銷
        電子商務
        關(guān)于加快制定電子商務法的議案
        電子商務人的核心能力
        期刊訂閱電子商務平臺
        中文字幕在线亚洲精品一区| 国产97色在线 | 国产| 亚洲另类丰满熟妇乱xxxx| 亚洲成av人片不卡无码| 97久人人做人人妻人人玩精品| 亚洲av日韩综合一区久热| 国产人成无码视频在线观看| 欧美黑寡妇特a级做爰| 亚洲精品国产美女久久久| 一本大道久久香蕉成人网| 久久亚洲AV无码一区二区综合| 高潮喷水无遮挡毛片视频| 五十路在线中文字幕在线中文字幕 | 国内老熟妇对白xxxxhd| 国产精品一区二区三区精品 | 国产日产亚洲系列av| 偷拍女厕尿尿在线免费看| 国产三级三级精品久久| 国产成人自拍视频播放| 青青草骚视频在线观看| 亚洲a无码综合a国产av中文| 成年免费a级毛片免费看无码| 欧美极品jizzhd欧美| 久久亚洲私人国产精品| 国产精品白浆视频一区| 国产杨幂AV在线播放| av高潮一区二区三区| 久久99精品久久久久久噜噜| 欧美两根一起进3p做受视频| 亚洲碰碰人人av熟女天堂| 一本无码人妻在中文字幕| 韩国女主播一区二区在线观看 | 久久无码高潮喷水免费看| 国产一区二区av男人| 一区二区三区高清视频在线| 亚洲av高清一区二区三区| 麻豆资源在线观看视频| 婷婷成人丁香五月综合激情| 国产精品久久久| 在线你懂| 亚洲色图偷拍自拍在线|