999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于微服務架構的病原微生物數據分析平臺設計與應用

2021-06-22 03:32:04徐建國田川
電子元器件與信息技術 2021年3期
關鍵詞:數據庫服務

徐建國,田川

(山東科技大學 計算機科學與工程學院,山東 青島 266590)

0 引言

在Java Web開發中,中小型企業一般選擇傳統的MVC架構,這種單體應用架構開發方式在一個項目中包含了所有的業務邏輯[1]。在項目開發初期這種開發方式有利于項目功能的水平擴展,并具備一定的業務承載能力。首先,隨著業務的擴大,系統的代碼量會越來越大,耦合度會越來越高,系統變的難以維護、擴展。其次,隨著服務量的不斷增長,MVC架構的應用在一臺機器一個進程里完成所有功能的運行模式無法滿足高并發訪問的需求[2-4]。

隨著云計算平臺的日益普及,云計算平臺支持高性能的SaaS(Software-as-a-Service,軟件即服務)應用,而微服務架構作為軟件開發架構的演進方向之一,已成為一種SaaS應用在云平臺的可行落地方案[5]。微服務的基本思想是將傳統的單體應用按業務功能拆分為一系列可被獨立設計、開發、部署、運維的軟件服務單元,服務間彼此配合、相互協作以實現最終價值[6-7]。

現有的病原微生物數據分析平臺采用了傳統的MVC架構,隨著用戶與數據量的增多,單體架構已經遠遠無法滿足現有的需求。本文將提出一套方案,將系統重構為微服務架構,本文后續章節組織如下,第1章節介紹了前后端分離解耦方案;第2章節介紹了數據庫切分方案;第3章節介紹了平臺功能服務化;第4章節介紹了系統重構后的軟件架構;第5章節對工作進行了總結。

1 前后端分離

前后端分離是目前互聯網項目開發的業界標準,通過nginx+tomcat進行前后端解耦,為之后的平臺功能服務化打下堅實的基礎[8-9]。前端與后端有兩種協作方式,一種是服務器端(后端)渲染的方式,見圖1另一種是客戶端(前端、瀏覽器端)渲染的方式,見圖2。

圖1 服務器端渲染的方式

圖2 客戶端渲染的方式

原有項目使用的就是第一種方式,該方式收到瀏覽器請求后,使用thymeleaf HTML5模板引擎在服務器端就將網頁生成,把整個HTML網頁返回給瀏覽器。

本文在前端引入Ajax,后端引入RESTful API,將前端項目部署在nginx服務器上,后端項目部署在tomcat服務器上,使得項目變為第二種前后端的協作方式。在第二種方式下,前后端被分離開來,除了接口以外的其他所有http請求(html、js、css等靜態文件)全部轉移到前端nginx服務器上,接口的請求是通過Ajax向服務器端發出請求,服務器只返回JSON格式的業務數據,由瀏覽器將數據渲染,這種方式不僅降低了前后端傳遞的數據量,而且將數據渲染的任務交給瀏覽器完成,大大降低了服務器的負載壓力[10]。

2 數據庫垂直切分

垂直切分是根據業務來拆分數據庫,同一類業務的數據表拆分到一個獨立的數據庫,另一類的數據表拆分到其他數據庫[11]。

原有的平臺使用的是一個單點數據庫,所有的讀寫請求都發到一個mysql上面,所以數據庫的負載太高。通過對原有項目的數據庫表結構進行分析研究,發現數據分析的五個主要功能模塊所訪問的數據庫表之間并無外鍵約束,故可以將原有單點數據庫按業務的不同垂直切分,切分結果如表1所示。

表1 垂直切分方案

如圖3所示,垂直切分后的數據庫讀寫請求被分散到了多個mysql數據庫節點上,雖然在一定程度上增加了服務器租賃成本,但是有效的解決了原有數據庫負載過高的問題。

圖3 客戶端渲染的方式

3 功能服務化

Spring Cloud Eureka組件提供了一套服務注冊與發現機制,通過架設一個Eureka Server,將原有的每個功能模塊獨立出來改造為Eureka Client并注冊到Eureka Server上,就實現了功能的服務化。服務化結果如圖4所示。

圖4 Eureka服務注冊中心

4 軟件架構設計

經過功能服務化之后,基于Spring Cloud中的組件完善軟件架構:最終的軟件架構如圖5所示。

圖5 軟件架構設計

(1)Zuul組件是Spring Cloud中的微服務網關,請求首先通過網關,進行路徑的路由,定位到具體的服務節點上。Zuul的第二個功能就是斷路器,如果一個微服務不可用,會導致一個請求漫長的等待,最終返回超時。而Zuul熔斷機制可以在某個微服務不可用時立即進入自定義處理邏輯。

(2)Ribbon組件是Spring Cloud中的負載均衡組件,用它可以實現同一種微服務實例之間的負載均衡。

5 結語

本文結合數據分析平臺并發訪問的需求,針對單體架構下的不足,通過對原有平臺的設計文檔的綜合,提出了一種重構方案。選擇Spring Cloud框架作為微服務架構一站式解決方案,在前后端分離、單點數據庫垂直拆分的基礎上,重新設計了病原微生物數據分析平臺的軟件架構。提高了系統的可擴展性、可用性,極大提升了系統并發訪問性能指標,為平臺的進一步發展提供了堅實基礎。

猜你喜歡
數據庫服務
服務在身邊 健康每一天
今日農業(2019年14期)2019-09-18 01:21:54
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年15期)2019-01-03 12:11:33
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
主站蜘蛛池模板: 蜜桃视频一区二区三区| 欧美性久久久久| 色天天综合| 22sihu国产精品视频影视资讯| 欧美成人精品欧美一级乱黄| 91亚洲国产视频| 黄色网站不卡无码| 国产精品99r8在线观看| 国产极品美女在线| 尤物精品视频一区二区三区| 又猛又黄又爽无遮挡的视频网站| 亚洲国产系列| 青青草原国产精品啪啪视频 | 久久久久中文字幕精品视频| 欧美日韩成人| 国产剧情无码视频在线观看| 婷婷六月综合网| 国产无遮挡裸体免费视频| 三上悠亚在线精品二区| 福利国产微拍广场一区视频在线| 亚洲AV无码一区二区三区牲色| 国产成人AV综合久久| 亚洲成人精品在线| 国产精品女人呻吟在线观看| 久久99久久无码毛片一区二区| 91久久偷偷做嫩草影院| 午夜电影在线观看国产1区| 丝袜亚洲综合| 欧美色视频在线| 亚洲天堂首页| 视频二区中文无码| 国产青榴视频| 久久这里只精品热免费99 | 免费人成黄页在线观看国产| 91在线丝袜| 91最新精品视频发布页| 波多野结衣的av一区二区三区| 欧美曰批视频免费播放免费| 亚洲中文精品久久久久久不卡| 91色爱欧美精品www| 91系列在线观看| 在线不卡免费视频| 精品视频一区在线观看| 久久久精品国产SM调教网站| 2022精品国偷自产免费观看| 国产成人无码综合亚洲日韩不卡| 日韩小视频在线播放| 香蕉久久国产精品免| 91娇喘视频| 伊人久久婷婷| 九九免费观看全部免费视频| 日韩欧美网址| 国产欧美日韩一区二区视频在线| 性色一区| 精品久久久久久久久久久| 亚洲无卡视频| 亚洲国产精品国自产拍A| 亚洲国产欧美中日韩成人综合视频| 亚洲AV无码久久精品色欲| 中国美女**毛片录像在线 | 凹凸国产分类在线观看| 婷婷五月在线| 亚洲福利片无码最新在线播放| 亚洲国产理论片在线播放| 色有码无码视频| 人妻中文字幕无码久久一区| av在线无码浏览| 91免费片| v天堂中文在线| 91精品最新国内在线播放| 国产嫖妓91东北老熟女久久一| 91无码视频在线观看| 日韩av高清无码一区二区三区| 女人av社区男人的天堂| 亚洲成a人片在线观看88| 亚洲精品日产精品乱码不卡| 黄色片中文字幕| 国产情侣一区二区三区| 四虎影视永久在线精品| 国产乱肥老妇精品视频| 国产精品刺激对白在线| 成人福利在线观看|