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

        ?

        結(jié)合DDD與服務(wù)網(wǎng)格的網(wǎng)絡(luò)輿情分析系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

        2023-12-05 08:15:04石明翔郭昕銳郭子巖
        現(xiàn)代計(jì)算機(jī) 2023年18期
        關(guān)鍵詞:子域輿情架構(gòu)

        韓 鈺,丁 悅,石明翔,郭昕銳,郭子巖

        (北京城市學(xué)院信息學(xué)部,北京 100080)

        0 引言

        當(dāng)前,微服務(wù)架構(gòu)[1]已成為軟件開發(fā)領(lǐng)域的熱點(diǎn)之一,特別是在分布式環(huán)境下,微服務(wù)已經(jīng)成為首選架構(gòu)。許多互聯(lián)網(wǎng)公司都在廣泛地應(yīng)用微服務(wù)架構(gòu),同時(shí)許多傳統(tǒng)企業(yè)也在利用微服務(wù)和容器進(jìn)行互聯(lián)網(wǎng)技術(shù)轉(zhuǎn)型。在這個(gè)過程中,Dubbo 和Spring Cloud 等傳統(tǒng)微服務(wù)框架成為國(guó)內(nèi)最受歡迎的開發(fā)框架之一。然而,軟件開發(fā)沒有單一的解決方案,基于這些傳統(tǒng)框架構(gòu)建的應(yīng)用系統(tǒng)在享受開發(fā)的同時(shí)也面臨一些痛點(diǎn),因此需要進(jìn)一步研究和探索新的方案來解決這些問題。

        針對(duì)上述問題,國(guó)內(nèi)做了很多的研究,廖艷艷[2]、彭永勇等[3]研究分析了Istio 在企業(yè)級(jí)微服務(wù)管理方面的相關(guān)問題。論述中提到,采用Istio 服務(wù)網(wǎng)格之后企業(yè)級(jí)微服務(wù)系統(tǒng)可以實(shí)現(xiàn)獨(dú)立運(yùn)行、動(dòng)態(tài)擴(kuò)容、鏈路追蹤等功能,相較于面向服務(wù)的架構(gòu)和SpringCloud 等框架,Istio能夠幫助企業(yè)有效降低開發(fā)和運(yùn)維成本,提高企業(yè)的效率。因此,本文以網(wǎng)絡(luò)輿情分析系統(tǒng)為例,嘗 試 使用DDD 和ServiceMesh[4]等 技術(shù),實(shí)現(xiàn)基于領(lǐng)域驅(qū)動(dòng)與服務(wù)網(wǎng)格的網(wǎng)絡(luò)輿情分析系統(tǒng),使用領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)對(duì)網(wǎng)絡(luò)輿情分析系統(tǒng)進(jìn)行拆分,使其更加易于迭代和擴(kuò)展,滿足開閉原則。在此基礎(chǔ)上使用Kuberbetes和Istio等技術(shù)把系統(tǒng)整合進(jìn)服務(wù)網(wǎng)格(Service Mesh)中并進(jìn)行服務(wù)治理,對(duì)系統(tǒng)實(shí)現(xiàn)負(fù)載均衡、熔斷、限流、可插拔的服務(wù)安全、服務(wù)運(yùn)行可觀察性等治理能力。

        本文所治理和監(jiān)控的網(wǎng)絡(luò)輿情分析系統(tǒng)的主要功能是為相關(guān)部門提供智能化決策支持,提升應(yīng)對(duì)處理輿情的速度,以此來引導(dǎo)輿論方向,快速化解危機(jī)輿論。此項(xiàng)目是在原單體架構(gòu)的基礎(chǔ)上,設(shè)計(jì)出態(tài)勢(shì)感知、輿情分析、智能決策和輿情預(yù)警等功能。主要用于多源網(wǎng)絡(luò)內(nèi)容的篩選與檢測(cè)、影響力評(píng)價(jià)模型的建立與分析、系統(tǒng)核心業(yè)務(wù)的實(shí)現(xiàn)。系統(tǒng)功能主要包括:自然語言處理、多維度查詢、智能分析及決策支持、系統(tǒng)管理等模塊。

        1 基于領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的服務(wù)子集劃分

        領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(domain driven design,DDD)的概念誕生于2003 年,由Evans[5]提出。它是一種設(shè)計(jì)思想方法論,用來指導(dǎo)將復(fù)雜問題進(jìn)行拆分、找出各子系統(tǒng)間的關(guān)聯(lián),來解決復(fù)雜系統(tǒng)開發(fā)中遇到的問題。在領(lǐng)域模型創(chuàng)建后,DDD 得到需求的第一步是通過領(lǐng)域模型的變化來指導(dǎo)數(shù)據(jù)和業(yè)務(wù)的變化,而不是將其分割,對(duì)數(shù)據(jù)和業(yè)務(wù)的變化分別考量,這樣會(huì)造成需求的前后分離。DDD 首先考慮的是業(yè)務(wù)模型,而不是數(shù)據(jù)。

        整體服務(wù)拆分共分為三步,首先是梳理需求劃分子域;其次是創(chuàng)建領(lǐng)域模型;最后是對(duì)限界上下文中的實(shí)體、值對(duì)象、聚合根等信息進(jìn)行挖掘。

        1.1 劃分子域

        對(duì)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)而言,在分析較為復(fù)雜的問題域時(shí),可以采用“分而治之”的思想[6],將復(fù)雜的功能需求拆分成子域。根據(jù)賈子甲[7]在先啟階段對(duì)微服務(wù)系統(tǒng)拆分方法的研究對(duì)本系統(tǒng)進(jìn)行拆分得到的限界上下文[8](本系統(tǒng)中子域約等于限界上下文)為:數(shù)據(jù)中心模塊、管理中心模塊、消息中心模塊、智庫(kù)中心模塊,輿情中心模塊,如圖1所示。

        圖1 基于DDD劃分的子域

        1.2 建立領(lǐng)域模型

        通過領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)方法繪制領(lǐng)域模型,從而確定業(yè)務(wù)和應(yīng)用邊界,保證業(yè)務(wù)模型與代碼模型的一致性。如果存在一個(gè)類被多個(gè)程序包所依賴,甚至成為“上帝類”時(shí),開發(fā)工作就必須協(xié)調(diào)開發(fā)的工序,而這一協(xié)調(diào)過程也將是反復(fù)和低效的。理想情況下,我們希望一個(gè)變更只影響一個(gè)敏捷團(tuán)隊(duì)或者一個(gè)服務(wù)[9]。通過DDD 的方法對(duì)網(wǎng)絡(luò)輿情分析系統(tǒng)進(jìn)行設(shè)計(jì)和構(gòu)建,發(fā)掘重要的業(yè)務(wù)領(lǐng)域概念,建立業(yè)務(wù)領(lǐng)域概念之間的關(guān)系。

        本系統(tǒng)的領(lǐng)域模型劃分如圖2所示。表示層負(fù)責(zé)與用戶交互,向用戶呈現(xiàn)數(shù)據(jù),并處理用戶輸入的請(qǐng)求;應(yīng)用層負(fù)責(zé)協(xié)調(diào)領(lǐng)域?qū)拥母鱾€(gè)對(duì)象來完成用戶請(qǐng)求,同時(shí)處理來自表示層的請(qǐng)求和領(lǐng)域?qū)拥捻憫?yīng);領(lǐng)域?qū)迂?fù)責(zé)存放業(yè)務(wù)中總結(jié)的聚合根、實(shí)體、對(duì)象和業(yè)務(wù)的處理邏輯,同時(shí)對(duì)業(yè)務(wù)規(guī)則進(jìn)行驗(yàn)證和實(shí)施;對(duì)限界上下文中相關(guān)的詳細(xì)信息會(huì)在后文分開說明;基礎(chǔ)設(shè)施層負(fù)責(zé)提供基礎(chǔ)設(shè)施支持,通過防腐層進(jìn)行數(shù)據(jù)庫(kù)訪問、網(wǎng)絡(luò)連接等,以便達(dá)到保護(hù)領(lǐng)域?qū)又袠I(yè)務(wù)的目的。

        圖2 網(wǎng)絡(luò)輿情分析系統(tǒng)的領(lǐng)域模型

        1.3 限界上下文元素分析

        以數(shù)據(jù)中心為例進(jìn)行主要元素分析,其限界上下文的分析結(jié)果見表1。

        表1 數(shù)據(jù)中心關(guān)鍵元素分析表

        輿情是一個(gè)重要的實(shí)體,包含了輿情標(biāo)簽、話題關(guān)注度、輿情所屬平臺(tái)和輿情來源的網(wǎng)民等值對(duì)象。時(shí)間段是一個(gè)實(shí)體,用于表示輿情數(shù)量趨勢(shì)變化和近三年追蹤輿情數(shù)量趨勢(shì)變化等趨勢(shì)分析的相關(guān)信息。用戶操作是一個(gè)實(shí)體,用于記錄用戶對(duì)輿情系統(tǒng)的使用情況,例如添加、修改、刪除等操作。

        輿情狀態(tài)分析功能中,聚合根是“輿情狀態(tài)分析”,它由輿情實(shí)體和狀態(tài)值對(duì)象組成。輿情實(shí)體代表一條具體的輿情信息,狀態(tài)值對(duì)象代表輿情的狀態(tài),其中的狀態(tài)有:已處理、已解決、已退回、未處理、線上回應(yīng)等。每條輿情信息都對(duì)應(yīng)著一個(gè)狀態(tài),輿情實(shí)體的生命周期由聚合根控制。

        2 基于服務(wù)網(wǎng)格的系統(tǒng)架構(gòu)

        通過領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)拆分的系統(tǒng)中存在多個(gè)服務(wù),如果單獨(dú)進(jìn)行部署就會(huì)存在配置管理困難、版本迭代時(shí)操作復(fù)雜、服務(wù)間調(diào)用情況無法監(jiān)控等問題,因此要進(jìn)行服務(wù)網(wǎng)格[10]治理。

        服務(wù)網(wǎng)格是一種用于管理和控制分布式系統(tǒng)中的服務(wù)間通信的基礎(chǔ)設(shè)施。它通過將網(wǎng)絡(luò)基礎(chǔ)設(shè)施從應(yīng)用程序中分離出來,為應(yīng)用程序提供透明的服務(wù)間通信,并提供諸如路由、負(fù)載均衡、故障恢復(fù)、監(jiān)視等功能。服務(wù)網(wǎng)格通常由一組網(wǎng)絡(luò)代理組成,這組代理通常是以Sidecar 形式實(shí)現(xiàn),它與應(yīng)用程序運(yùn)行在同一容器內(nèi),通過共享網(wǎng)絡(luò)命名空間和卷等方式與服務(wù)集成在一起攔截服務(wù)請(qǐng)求和響應(yīng)。通過這種方式,可以在不修改應(yīng)用程序代碼的情況下提供額外的功能和可靠性保障。

        本系統(tǒng)架構(gòu)采用分布式服務(wù)網(wǎng)格高可用的架構(gòu)方式,使用DDD 的方法論進(jìn)行拆分,被拆分成如圖2所示的智庫(kù)中心、管理中心、消息中心等五個(gè)服務(wù)子集。每個(gè)服務(wù)子集通過docker進(jìn)行容器化后以pod 形式運(yùn)行并管理,使用Kubernetes 實(shí)現(xiàn)容器編排、動(dòng)態(tài)擴(kuò)展等功能,使用Istio 管理流量規(guī)則和策略來控制服務(wù)間通信,進(jìn)而實(shí)現(xiàn)服務(wù)治理。

        服務(wù)中每一個(gè)pod 中都會(huì)有一個(gè)以Sidecar模式存在的Envoy,Envoy 從Istio 中心獲取各服務(wù)的地址并把請(qǐng)求轉(zhuǎn)發(fā)到對(duì)應(yīng)服務(wù)的Envoy 中,再由其轉(zhuǎn)到服務(wù)中,通過Envoy來進(jìn)行各服務(wù)注冊(cè)和發(fā)現(xiàn)服務(wù)之間的網(wǎng)絡(luò)代理。如圖3所示。

        圖3 服務(wù)網(wǎng)格架構(gòu)圖

        各責(zé)任單位發(fā)出消息請(qǐng)求到Ingress 進(jìn)行統(tǒng)一接入和負(fù)載均衡,之后轉(zhuǎn)發(fā)到擁有Nginx 的pod 中進(jìn)行靜態(tài)資源的請(qǐng)求。用ActiveMQ 進(jìn)行異步通信實(shí)現(xiàn)削峰處理,讓通信具有良好的峰值處理能力和送達(dá)保障,其中用戶管理服務(wù)、輿情信息管理服務(wù)、輿情監(jiān)控服務(wù)、輿情反饋管理服務(wù)采用邊車代理進(jìn)行通信,通過Envoy進(jìn)網(wǎng)絡(luò)代理;服務(wù)網(wǎng)格控制中心實(shí)現(xiàn)服務(wù)編排、流量控制規(guī)則管理、服務(wù)發(fā)現(xiàn)、負(fù)載均衡規(guī)則管理等機(jī)制,實(shí)現(xiàn)系統(tǒng)的動(dòng)態(tài)擴(kuò)容和高可用。

        3 實(shí)驗(yàn)與分析

        為了驗(yàn)證系統(tǒng)的執(zhí)行效率,本文環(huán)境采用三臺(tái)阿里云服務(wù)器,一個(gè)為主節(jié)點(diǎn)Master,兩個(gè)子節(jié)點(diǎn)node1、node2,云服務(wù)器硬件配置為一臺(tái)4核和8 GB內(nèi)存的云服務(wù)器、兩臺(tái)2核和2 GB內(nèi)存的云服務(wù)器,使用的操作系統(tǒng)為Centos8.2 64 位。在實(shí)驗(yàn)中,被網(wǎng)格化和未被網(wǎng)格化的網(wǎng)絡(luò)輿情系統(tǒng)依次做了兩組實(shí)驗(yàn),其中吞吐量的差異如圖4所示。

        圖4 不同架構(gòu)下執(zhí)行效率對(duì)比圖

        并發(fā)數(shù)大于200時(shí),未經(jīng)過領(lǐng)域驅(qū)動(dòng)拆分和經(jīng)過領(lǐng)域驅(qū)動(dòng)拆分的吞吐量仍相對(duì)同步遞增,但未經(jīng)過領(lǐng)域驅(qū)動(dòng)拆分的程序,吞吐量在達(dá)到一定并發(fā)量后便停止上升,反而有下降的趨勢(shì),其原因判斷為未經(jīng)過服務(wù)治理的程序達(dá)到了硬件性能的上限,其緩存和負(fù)載均衡也不能進(jìn)一步提升程序的性能。領(lǐng)域驅(qū)動(dòng)拆分后,因?yàn)橛袆?dòng)態(tài)擴(kuò)容負(fù)載均衡和降級(jí)熔斷方法的影響,使得吞吐量相對(duì)于未經(jīng)領(lǐng)域驅(qū)動(dòng)拆分的可以進(jìn)一步增長(zhǎng)。

        并發(fā)數(shù)達(dá)到本次最大時(shí),很明顯可以看到,未經(jīng)領(lǐng)域驅(qū)動(dòng)拆分和經(jīng)過領(lǐng)域驅(qū)動(dòng)拆分的吞吐量差距顯著,此時(shí)可以證明,本系統(tǒng)中使用的領(lǐng)域驅(qū)動(dòng)拆分有著明顯的成效。

        4 結(jié)語

        本文通過領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)從子域劃分到主要元素分析,對(duì)網(wǎng)絡(luò)輿情系統(tǒng)進(jìn)行服務(wù)子集劃分,從而更好地應(yīng)對(duì)復(fù)雜業(yè)務(wù),使技術(shù)實(shí)現(xiàn)與業(yè)務(wù)更好地分離,使外部調(diào)用與內(nèi)部系統(tǒng)相互隔離。本文研究了有關(guān)服務(wù)網(wǎng)格的理論與Istio 的應(yīng)用,并使用kuberbetes 與Istio 對(duì)經(jīng)過DDD 拆分后的系統(tǒng)進(jìn)行網(wǎng)格化,降低了運(yùn)營(yíng)維護(hù)成本,提高了微服務(wù)的可擴(kuò)展性和可用性。通過實(shí)驗(yàn)結(jié)果的對(duì)比分析證明,在經(jīng)過領(lǐng)域驅(qū)動(dòng)拆分和服務(wù)網(wǎng)格治理后系統(tǒng)有著良好的性能。

        猜你喜歡
        子域輿情架構(gòu)
        基于FPGA的RNN硬件加速架構(gòu)
        基于鏡像選擇序優(yōu)化的MART算法
        基于子域解析元素法的煤礦疏降水量預(yù)測(cè)研究
        煤炭工程(2021年7期)2021-07-27 09:34:20
        功能架構(gòu)在電子電氣架構(gòu)開發(fā)中的應(yīng)用和實(shí)踐
        汽車工程(2021年12期)2021-03-08 02:34:30
        一種基于壓縮感知的三維導(dǎo)體目標(biāo)電磁散射問題的快速求解方法
        LSN DCI EVPN VxLAN組網(wǎng)架構(gòu)研究及實(shí)現(xiàn)
        輿情
        輿情
        輿情
        一種基于FPGA+ARM架構(gòu)的μPMU實(shí)現(xiàn)
        影音先锋男人站| av网页免费在线观看| 国产高清吃奶成免费视频网站| 一区二区国产在线观看| 久久青青草原亚洲AV无码麻豆| 美女熟妇67194免费入口| 熟妇人妻丰满少妇一区| 日本熟妇中出高潮视频| 7194中文乱码一二三四芒果| 亚洲乱码日产精品一二三| 亚洲国产长腿丝袜av天堂| 久久久国产精品ⅤA麻豆| 国产欧美日韩不卡一区二区三区| 视频精品亚洲一区二区| 久久人妻少妇嫩草av蜜桃| 青春草免费在线观看视频| 又嫩又硬又黄又爽的视频| 婷婷五月综合丁香在线| 欧美自拍区| 丰满人妻无奈张开双腿av| 国产精品成人一区二区在线不卡| 精品国产sm最大网站| 日本特黄特色特爽大片| 最好看的最新高清中文视频| 国产日韩久久久精品影院首页| 一本无码人妻在中文字幕| 黑人一区二区三区在线| 国产不卡在线播放一区二区三区| 亚洲av永久一区二区三区| 精品综合一区二区三区| 亚洲精品成人av在线| 欧美亚洲日韩国产人成在线播放| 欧美成人www免费全部网站| 日本一区不卡高清在线观看| 激情五月开心五月啪啪| 又黄又爽又色视频| 国产zzjjzzjj视频全免费| 国产va精品免费观看| 97自拍视频国产在线观看| 国产自拍成人免费视频| 成人午夜福利视频后入|