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

MVC模式下多層分布式軟件系統架構設計

2018-04-04 09:10:16劉正張書鋒趙鶴鳴
現代電子技術 2018年7期

劉正 張書鋒 趙鶴鳴

摘 要: 為了解決傳統基于模式的軟件系統架構設計存在復用力度弱以及系統代價高的弊端,設計MVC模式下多層分布式軟件系統架構,在分析MVC模式結構的基礎上,將MVC設計形式的開發框架Struts,Spring以及Hibemate匯集起來形成SSH框架,設計基于SSH的多層分布式軟件系統開發框架,給出SSH框架的組合及其體系結構,并分析了其中的表示層、業務層、持久層、域模型層的功能,詳細描述了軟件系統的運行流程。設計的軟件系統功能模塊包括會話管理模塊、身份認證模塊、授權模塊、安全審計模塊以及性能檢測模塊。實驗結果說明,所設計軟件系統的運行效率和能耗都較優,具備較高的性能。

關鍵詞: MVC模式; 多層分布式; 軟件系統; 架構設計; 復用力度; 開發框架

中圖分類號: TN911?34; TP311.52 文獻標識碼: A 文章編號: 1004?373X(2018)07?0135?05

Design of multi?layer distributed software system architecture based on MVC mode

LIU Zheng1, 2, ZHANG Shufeng2, ZHAO Heming1

(1. School of Electronic and Information Engineering, Soochow University, Suzhou 215123, China;

2. Suzhou Industrial Park Institute of Services Outsourcing, Suzhou 215123, China)

Abstract: In order to eliminate the shortcomings of weak reuse strength and high system cost existing in the design of traditional software system architecture based on mode, a multi?layer distributed software system architecture based on MVC mode was designed. On the basis of analyzing the structure of the MVC mode, the development framework Struts, Spring and Hibemate in MVC design mode are assembled to form the SSH framework. The SSH framework based development framework of multi?layer distributed software system was designed. The combination and architecture of the SSH framework are given. The functions of the presentation layer, business layer, persistence layer and domain model layer function are analyzed. The running process of software system is described in detail. The functional modules of the designed software system include session management module, identity authentication module, authorization module, security audit module and performance detection module. The experimental results show that the designed software system has high operating efficiency and performance, and low energy consumption.

Keywords: MVC mode; multi?layer distribution; software system; architecture design; reuse strength; development framework

0 引 言

在持續擴展軟件系統領域和增添繁瑣度的大環境中,開發設計人員需要解決層出不窮的問題,各種各樣的應用解決規劃也隨之產生。因此,軟件系統建立和框架規劃具有重要應用價值[1],軟件系統的架構是框架實現特殊情況的軟件架構。設計、開發軟件系統架構時,框架是應用程序的一部分,其可實現完整設計以及代碼的復用,實現特定的程序。大幅度提升軟件的開發速度,確保軟件品質是框架復用的優勢。而傳統基于模式的軟件系統架構設計存在復用力度弱以及系統代價高的弊端。因此,本文設計基于MVC模式下多層分布式軟件系統架構,極大地提高了軟件系統的性能。

1 MVC模式下多層分布式軟件系統架構設計

1.1 MVC設計模式

多層分布式軟件系統架構設計模式被稱為模型?視圖?控制器設計模式(Model?View?Controller,MVC)。MVC設計模式的優勢表現為模型層、視圖層以及控制層不同層之間層次鮮明,性能分明,不同模塊間互不干擾,系統的靈敏性與重復性得到提升。實現三層乃至多層的松散耦合是MVC設計模式的中心內容,應用程序被其抽象為三大類,它們分工明確、相互協作將用戶提出的請求完成[2]。MVC構成如圖1所示。

用Model,View,Controller的方法對應用的流入、管理、流出過程實施分離即是MVC設計模式。用啟發應用系統中事項的方式來更改控制器,并對模式和視圖造成影響。本文通過MVC模式的M.V.C交叉圖來分析他們間的交叉關系。從圖1的描述中可看出,用戶用上交的方式對Requests和Controller部分進行交叉。Model部分被Controller部分實例化,在應用的邏輯基礎上對他們進行操作。用戶顯示的View在Model被建立的情況下由Controller確定,且View和Model交叉操縱,用戶的有關數據被獲取和顯現。View可實時修正Model狀態,并將功能模塊與顯示模塊進行劃分[3],應用系統的維持性、擴大性、轉移性以及組件的循環性得到提升。

1.2 SSH的多層分布式軟件系統開發框架設計

企業級應用開發中,較優的依據MVC設計形式的開發框架是Struts框架。企業級應用程序全套的處理計劃是模塊化Spring框架。開源O/R(對象關系)映射框架叫做Hibemate框架,其是對于Java語言而建立的,目的是使保存永久話,使數據庫里的對象永久化,并服務于應用程序。基于SSH架構的多層分布式軟件系統開發處理計劃是本文提出的開發框架,把Struts,Spring,Hibemate匯集起來產生的普遍性框架為SSH框架。依據Struts具備的完備標簽庫以及對MVC模式的較好實現,運用Struts對視圖層進行實現。在對象以及數據庫中,關系表的映射機制完成有效的針對對象編程的基礎上,Hibemate完成數據的永久層。為了提出貫穿整個過程的處理計劃,把不同的專屬框架統一成相連的總框架。Spring框架發揮著粘合劑的作用[4],其通過把不同領域優秀的處理計劃統一起來構建新框架的方式來服務應用。

1.2.1 組 合

綜合塑造的SSH組合框架包括Struts,Spring以及Hibemate三類,采用IOC對不同組件實施整合,獲取功能強大的多層分布式軟件系統框架?SSH框架。通過Struts架構實現MVC分離,通過Hibemate框架完成持久層服務,業務層通過Spring實現業務控制。通過SSH整合框架開發多層分布式軟件系統,其在總體架構以及局部復雜業務模型內具有較低的耦合性,具備較高的靈敏度和可擴展性。

1.2.2 具體架構方案及各層功能

多層分布式軟件系統應用被SSH框架依據框架規劃原理劃分成四個層次,分別為表示層、業務層、持久層、域模型層。Struts為表示層,Spring為業務層,Hibemate為持久層,用圖2描述其框架構造。SSH框架中,不同層次的職責被確定[5],不同層的性能方面沒有重復,數據的輸送以及交叉的實施由通信接口實現。

1) 表示層。表示層通過Struts實現,在SSH框架中Struts扮演操控的角色,其核心是Struts.cntug.xch,MVC中Controller的職責,ActionForm類封裝以及用戶界面的數據元素由控制組件Actionservlet負責,業務邏輯、動作管理、鏈接調轉由Action類來完成。

2) 業務邏輯層。業務邏輯層通過Spring對業務組件的安裝連接進行實現,依據添加DI、AOP應用,針對接口編程技術,對業務組件間的融合度進行減小,使系統相容性和延展性得到提升。依據Spring完成業務邏輯層的不同模塊,運作程序時,根據配置文件在具體的調用舉措模塊中添加詳細的業務邏輯實現,配置文件的撰寫依據是業務操作進程。

3) 數據持久層。采用ORMaPing工具基于Hibemate的基礎上,數據持久層改善了數據庫的訪問功能,完成了與數據庫交叉的CRUD操作(增加、更改、刪減、瀏覽),把數據庫表同對象連接起來,運用SQL對數據庫表的交叉向徑直面向對象的數據庫交叉完成轉換,使編碼效率得到大幅度提升。

4) 域模型層。開發多層分布式軟件系統應用程序時,要有轉移于各層間的對象集合。現實需要的業務對象構成了域模型層。其中,研究人員只需要注意域對象(domain object)。若數據庫中的內容被Hibemate準許儲存到域對象(domain object)中,則連續斷開時能夠在用戶界面層顯現數據,持久層也能夠接收到被退回的對象,并將其完善于數據庫中。此模型的優點是在無附帶編碼的條件下,Java研究人員可以自如應用面向對象編程。

依據上述內容得出,架構在通信接口的基礎上彼此聯系,不同層間彼此單獨,且不同層的性能非常確定。分層有很多積極作用,它減小了系統不同局部間的耦合度,便于研究人員的工作劃分,系統的延展性以及維持性得到大幅度加強。

1.2.3 框架的工作流程

SSH框架在客戶端請求抵達后進入操作狀態。用戶操縱網頁是表象,實際上,其內部業務管理的經過也在其中,并對操縱和系統做數據交叉。表示層的操縱包括三層,分別是業務層、數據持久層以及域模型層,采用域模型層對表示層、業務層以及數據持久層間的數據進行傳輸。數據被提煉以及保存的過程中,把持事務以及管理異樣情況通過業務邏輯層框架Spring完成[6]。三個框架應相互協作實現交互,三個框架間相互合作的流程如圖3所示。

在網頁中,用戶操作的動作促使Struts框架接收此動作,且在配置文件(Struts?config.xml)里搜索與該動作相吻合的Action,檢驗配置模塊中的屬性validate的真假,如果為真,那么通過數據檢驗框架檢驗屬性name特定的ActionForm。檢驗合格或屬性值為false時,用屬性type特定的Action類對其進行管理。此系統中,同業務邏輯層的框架Spring統一后,配置文件中采用的Action類即為采用的Spring框架中所封裝的代理類DelegatingActionProxy,采用此代理類的優勢是業務進程的控制權能夠從Struts調轉到Spring。

綜合分析得知,Spring框架相當于精簡的重量較輕的Web容器,其性能與EJB容器的性能相似,對操控整體系統進程發揮了重大影響,性能的實現需具備能源以及資金大幅度縮減,但是效率得到巨大的提升。Hibemate的數據持久層性能在框架容器的操控下得以實現,事務和安全的操控則借助框架容器中此框架的特征來實現。將Struts與Spring相結合,用Spring管理業務邏輯,通過Spring的操控,大幅度提升了數據管理的準確度。

1.3 系統功能模塊設計

本文將基于MVC模式下多層分布式軟件系統分成:會話管理模塊、身份認證模塊、授權模塊、安全審計模塊以及性能檢測模塊,以JAASPAM結構為基礎的身份認證模塊,用戶登錄系統依靠以多層分布式軟件系統客戶端為基礎的表單,滿足支持口令以及X.509證書認證,用戶信息存放在關系數據庫中,認證證書由密鑰庫產生和提煉。以JAAS為基礎設計的授權模塊用來確認認證用戶有無進入以關系數據庫及XML策略文件為依據設立的特定資源訪問庫。會話管理模塊是身份認證模塊和授權模塊之間的橋梁,會話信息的安全得到保障才能順利實現訪問過程。出現異常及日常日志數據的維護由安全審計模塊負責[7]。性能檢測模塊計算發生安全事件的情況下從性能及內存消耗方面產生的各種支出。性能檢測模塊的完成需要憑借MVC模式,具體功能模塊調試依靠控制器StrutsAction與Struts相互影響的依附聯系來收集用戶提交用來進行信息認證及傳輸過程的完整信息。以各種對象/關系的依附得到POLO對象,憑借Hibemate和DAO對象之間的持久化管理,系統的各部分性能得到加強。具體結構如圖4所示。

將這些系統功能進行整理后得到的分散在不同的Action中的連接點稱為橫切關注點。運用APO技術對系統執行建模及信息攔截功能,Aspect進行封裝橫切邏輯,在切入點被激活之后傳導開始橫切邏輯,任務完成后原路返回,流程圖如圖5所示。

1.3.1 安全數據庫和XML策略文件設計

安全數據庫作用是保存客戶身份識別、批準與核對。它的理論依據是RBAC控制理論,其中包括身份認證和授權,身份認證涵蓋用戶表、角色表、登錄表,授權分為用戶登錄表、權限表等。以上表格是依照Permissionid,Userid及Roleid進行外部關聯。為了更高效地實施管理,角色表中的字段利用Groupid為擴展字段對角色組進行編號,角色間的安全關系表結構用圖6描述。用Uri表示權限表中頁面瀏覽流程,可加強對頁面安全的維護。審計過程覆蓋日志表、安全事件和發生時間等。

1.3.2 會話管理模塊設計

會話信息的維護需要從用戶登錄時直到會話時間結束或用戶注銷為止,期間的會話信息安全需要會話管理模塊來維護。會話信息包含重要的上下文連接信息及客戶身份信息?AuthenticateUtil是通過會話管理模塊施行的,這一過程只能在身份認證后開始。安全數據庫授權之前,由獲知會話內容的AuthorizationAspect進行信息傳導[8],最終取得認證后主題Subject。會話管理模塊是授權穩定進行的關鍵。圖7是會話管理模塊結構。

會話管理器(SessionManager)可對會話內容實施修正以及過濾操作。用戶實名認證后,會話管理器借助SessionCreator把獲取的登錄上下文(LoginContet)以及用戶登錄信息(UserlogiaVo)儲存到會話信息(SessionBean)中,共同作用得到會話信息,發現用戶使用時間過期或注銷時會話信息會自動消除,減少多余的未認證信息造成系統故障。SessionCreator采用工廠法(FactoryMethod)模式得到會話信息,在用戶經過認證后,會話信息的回執傳送給授權模塊在授權發生時。會話信息主要是以JavaBean的模式存在,以getter或者setter兩種方式為數據成員提供如登入上下文對象和用戶信息對象操作路徑,變成可復用的軟件組成部分。

2 實驗結果與分析

本文設計的多層分布式軟件架構的目標是降低系統運行開銷,提高系統性能。實驗將Aspect當成AOP實現語言。采用靜態織入方案,確保Aspect編織器在程序編譯以及鏈接過程時,向核心代碼內融入橫切代發,實現程序的擴展,使得系統性能提高。圖8描述了課題項目不同類型橫切關注點的排列情況,標識模塊用于描述不同StrutsAction,條形描述授權、日志跟蹤以及性能等橫切關注點。采用Aspect將功能相似的橫切關注點聚集至Aspect實現,解決代碼糾纏以及分散問題,提高程序的擴展性和維護效率。

如果身份認證以及授權連接點被激活,則性能監測模塊運算系統即刻統計CPU以及內存的能耗,控制臺在一次認證授權執行成功過程中呈現的系統性能用圖9描述。控制人員采用不同數據對系統運行狀態實施監測,若系統存在異常情況,則通過合理的解決方案確保系統的平穩運行。

實驗對比分析本文設計的軟件系統以及傳統基于模式的軟件系統架構的運行效率和精度、CPU以及內存的能耗結果,用圖10和圖11描述。

能夠看出,相對于傳統基于模式的軟件系統,本文設計的軟件系統具有更高的運行效率和精度,較低的CPU以及內存能耗,本文設計的軟件系統性能更佳,取得了令人滿意的效果。

3 結 語

本文設計了MVC模式下多層分布式軟件系統架構,通過實驗結果說明,所設計系統極大地提高了軟件系統的性能,具有較高的應用價值。

參考文獻

[1] 仝茵.基于ASP.NET MVC模式的軟件開發架構的研究與探討[J].中國電子科學研究院學報,2016,11(6):599?602.

TONG Yin. The exploration and research of software development architecture based on ASP.NET MVC pattern [J]. Journal of Chinese Institute of Electronic Science, 2016, 11(6): 599?602.

[2] 朱興宇,杜景林,沈曉燕.基于MVC的多組件融合的氣象傳感網管理平臺[J].科技通報,2016,32(4):59?65.

ZHU Xingyu, DU Jinglin, SHEN Xiaoyan. The management platform based on MVC in the meteorology sensor network with multi?component integration [J]. Bulletin of science and techno?logy, 2016, 32(4): 59?65.

[3] 唐永瑞,張達敏.基于Ajax與MVC模式的信息系統的研究與設計[J].電子技術應用,2014,40(2):128?131.

TANG Yongrui, ZHANG Damin. The research and design of the information system based on Ajax and MVC pattern [J]. Electronic technology applications, 2014, 40(2): 128?131.

[4] 伍旭,戴光明,彭雷,等.基于MVC架構的深空探測任務設計與仿真平臺[J].計算機仿真,2014,31(8):92?96.

WU Xu, DAI Guangming, PENG Lei, et al. Deep space exploration mission design and simulate platform based on MVC [J]. Computer simulation, 2014, 31(8): 92?96.

[5] 劉淑珍,王文帥,齊法制.基于MVC模式的研究所評審系統的設計與實現[J].核電子學與探測技術,2014(1):59?62.

LIU Shuzhen, WANG Wenshuai, QI Fazhi. Design and implementation of MVC?based assessment system for institute [J]. Nuclear electronics and detection technology, 2014(1): 59?62.

[6] 劉紅霞,陸文迪.改進的MVC設計模式的研究與應用[J].計算機工程與科學,2015,37(9):1688?1691.

LIU Hongxia, LU Wendi. Research and implementation of an improved MVC design pattern [J]. Computer science and engineering, 2015, 37(9): 1688?1691.

[7] 馮智慧,宋春燕,張廣洲,等.基于分布式多層體系的輸變電工程電磁環境智能實時監測系統[J].中國電力,2016,49(1):109?113.

FENG Zhihui, SONG Chunyan, ZHANG Guangzhou, et al. An intelligent real?time monitoring system for the power transmission electromagnetic environment based on a distributed multi?tier architecture [J]. China electric power, 2016, 49(1): 109?113.

[8] 張永剛,莊衛金,孫名揚,等.大運行模式下面向監控的分布式智能告警架構設計[J].電力系統保護與控制,2016,44(22):148?153.

ZHANG Yonggang, ZHUANG Weijin, SUN Mingyang, et al. Architectural design of distributed intelligent alarm application for equipment monitoring in the "large operation" mode of State Grid [J]. Power system protection and control, 2016, 44(22): 148?153.

主站蜘蛛池模板: 欧美精品不卡| 大学生久久香蕉国产线观看 | 亚洲天堂网在线观看视频| av天堂最新版在线| 国产精品午夜电影| 国产黑丝视频在线观看| 美女国内精品自产拍在线播放 | 亚洲AⅤ无码国产精品| 日韩在线播放中文字幕| 国产在线精彩视频二区| 香蕉久久国产超碰青草| 美女裸体18禁网站| 91综合色区亚洲熟妇p| 麻豆国产在线观看一区二区| 四虎亚洲精品| 成人福利在线看| 婷婷亚洲综合五月天在线| 国产人在线成免费视频| 伊人91视频| 国产亚洲日韩av在线| www.99精品视频在线播放| 97超碰精品成人国产| 亚洲大尺度在线| 国产精品第一区| 5388国产亚洲欧美在线观看| 亚洲美女AV免费一区| 91亚洲精品国产自在现线| 91小视频在线观看免费版高清| 伊人无码视屏| 国产xxxxx免费视频| 婷五月综合| 超碰免费91| 国产乱人伦精品一区二区| 亚洲综合片| 亚洲国产第一区二区香蕉| 国产精品自在线天天看片| 51国产偷自视频区视频手机观看| 亚洲精品动漫| 99久视频| 久久精品视频一| 国产高清在线精品一区二区三区| 在线国产综合一区二区三区| 久久99国产乱子伦精品免| 国产人前露出系列视频| 亚洲国产成人久久77| 久久天天躁狠狠躁夜夜2020一| 色丁丁毛片在线观看| 内射人妻无套中出无码| 美女潮喷出白浆在线观看视频| 91精品免费久久久| 日韩欧美91| 国产欧美精品一区aⅴ影院| 免费毛片全部不收费的| 久久久久夜色精品波多野结衣| 亚洲欧洲天堂色AV| 2021国产在线视频| 亚洲中文无码av永久伊人| 亚洲欧美不卡视频| 欧美特级AAAAAA视频免费观看| 亚洲人成在线精品| 国产精品成人一区二区不卡| 欧美不卡视频一区发布| 中国国产高清免费AV片| 精品视频福利| 夜精品a一区二区三区| 免费人成在线观看视频色| 91久久偷偷做嫩草影院电| 亚洲成aⅴ人片在线影院八| 一区二区三区国产| 欧美伊人色综合久久天天| 一级毛片在线播放免费观看 | 亚洲AⅤ永久无码精品毛片| av在线5g无码天天| 欧美日韩国产高清一区二区三区| 亚洲一级毛片免费观看| 国产乱人免费视频| 永久毛片在线播| 国产香蕉97碰碰视频VA碰碰看 | 欧美一级专区免费大片| 免费人成在线观看成人片| 欧美有码在线| 午夜综合网|