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

?

面向云計算組件的軟件開發(fā)研究

2019-09-12 10:41:42左海春
智能計算機與應(yīng)用 2019年4期

摘 要:隨著云計算應(yīng)用的不斷發(fā)展,基于云虛擬環(huán)境下的軟件開發(fā)、部署、應(yīng)用的一體化需求越來越強烈。在云計算環(huán)境下,傳統(tǒng)軟件開發(fā)方式將受虛擬化、超大規(guī)模并行計算等環(huán)境的挑戰(zhàn)。本文結(jié)合云架構(gòu)虛擬化技術(shù)及對現(xiàn)有軟件技術(shù)的研究,設(shè)計了一種針對實時流數(shù)據(jù)計算的高性能分層式、組件式的中間件軟件系統(tǒng),為云環(huán)境下提供一種面向組件的中間件軟件開發(fā)方法。

關(guān)鍵詞:云應(yīng)用框架;軟件開發(fā)方法;云組件容器模型;實時流數(shù)據(jù)

文章編號:2095-2163(2019)04-0295-03 中圖分類號:TP311.52 文獻(xiàn)標(biāo)志碼:A

1 現(xiàn)有云計算軟件開發(fā)模式分析

1.1 基于云平臺的軟件開發(fā)

國內(nèi)外廣泛用于企業(yè)基于云環(huán)境的軟件開發(fā),主要有Google_Predictive、IBM_InfoSphere BigInsights、阿里_E-MapReduce、華為FusionInsightHD、分布式系統(tǒng)基礎(chǔ)架構(gòu)Hadoop、spark、hadoop、openstack、cloudstack等。FusionInsightHD主要針對大型企業(yè)快速構(gòu)建大數(shù)據(jù)處理系統(tǒng)提供解決方案,能實施企業(yè)級大數(shù)據(jù)分布存儲、并行計算、快速查詢等一體化系統(tǒng)構(gòu)建。E-MapReduce是運行在阿里云計算上的一種大數(shù)據(jù)處理的系統(tǒng)解決方案。這些云開發(fā)框架體系龐大,包括各種組件技術(shù),在系統(tǒng)軟件開發(fā)過程中,存在大數(shù)據(jù)軟件組件選型配置困難、開發(fā)周期長、部署困難、維護(hù)管理代價昂貴、系統(tǒng)運行分析優(yōu)化難等問題。

1.2 基于分布式通信中間件軟件開發(fā)

云計算可以利用中間件實現(xiàn)通信功能, 利用系統(tǒng)之間采用統(tǒng)一的接口與協(xié)議進(jìn)行數(shù)據(jù)交換與控制,從而降低了系統(tǒng)之間的依賴性,提高了系統(tǒng)的通用性、穩(wěn)定性、可靠性。但系統(tǒng)軟件模塊之間的耦合度較高,應(yīng)用算法復(fù)用度不能很好解決,以致使軟件開發(fā)效率不高。

1.3 基于組件框架設(shè)計模式開發(fā)

基于組件的軟件開發(fā)技術(shù),可通過系統(tǒng)組件庫中的組件模塊來快速構(gòu)建軟件系統(tǒng)。由于組件是編程接口和功能相互獨立的元件,因此組件技術(shù)具有高復(fù)用性,并能規(guī)避開發(fā)中可能導(dǎo)致的錯誤,從而大大提高軟件的可靠性及軟件的開發(fā)效率。選擇組件框架設(shè)計模式開發(fā)軟件系統(tǒng)已經(jīng)成為一種非常重要的主流技術(shù)。但基于組件技術(shù)對云虛擬化環(huán)境適應(yīng)能力一般、不利系統(tǒng)部署遷移、不利業(yè)務(wù)擴展、改造及系統(tǒng)升級困難。

2 基于云環(huán)境組件的中間件框架設(shè)計

本框架的設(shè)計與實現(xiàn)是基于分布式通信中間件及中間件容器組件技術(shù)相結(jié)合, 通過創(chuàng)新客戶端的組件技術(shù), 引入云數(shù)據(jù)引擎與數(shù)據(jù)注入技術(shù), 提出基于云環(huán)境組件的中間件框架開發(fā)系統(tǒng)。

2.1 云環(huán)境組件的中間件框架總體設(shè)計

將軟件框架設(shè)計成4層,即應(yīng)用層、組件層、容器層和中間件層。本軟件框架模型如圖1所示。中間件屬于應(yīng)用軟件基礎(chǔ)平臺,中間件部署在不同的服務(wù)器節(jié)點上,并可以實現(xiàn)通信。組件依存于下層容器,容器為組件提供生存環(huán)境。組件是實現(xiàn)應(yīng)用軟件功能的主體,是具體算法的實現(xiàn)。容器中間件是實現(xiàn)應(yīng)用軟件基礎(chǔ)環(huán)境,本方法通過組件在容器中的裝配實現(xiàn)應(yīng)用軟件的構(gòu)建。

2.2 容器模型設(shè)計

云計算環(huán)境下為了適應(yīng)不斷演變的環(huán)境和用戶需求,往往要求能夠動態(tài)調(diào)整其內(nèi)部結(jié)構(gòu)配置。獨立的組件接入到軟件框架,在該框架體系中容器是實現(xiàn)應(yīng)用軟件的基礎(chǔ)環(huán)境,容器模塊設(shè)計如圖2所示。容器層是分布式中間件與組件的溝通橋梁,為組件提供管理控制與通信基礎(chǔ)。根據(jù)組件管理與通信抽象出容器模型,按容器模型的需求分2大功能支撐模塊:開發(fā)環(huán)境支撐和系統(tǒng)運行支撐。開發(fā)環(huán)境支撐,指容器為用戶在開發(fā)云應(yīng)用軟件時,需要提供的功能。系統(tǒng)運行支撐指容器為上層應(yīng)用系統(tǒng)提供所需的運用環(huán)境。主要包括:組件管理器、運行狀態(tài)監(jiān)控、資源調(diào)度與分配、組件生命周期管理、系統(tǒng)自動化部署、應(yīng)用權(quán)限管理等6部分。這些服務(wù)可供各種功能組件或下層中間件的使用。

3 基于組件的軟件系統(tǒng)開發(fā)

3.1 發(fā)開環(huán)境部署

首先進(jìn)行Application的初始化系統(tǒng),配置基本的環(huán)境變量、資源、構(gòu)造器、監(jiān)聽器。然后加載應(yīng)用系統(tǒng)模塊,包括啟動流程的監(jiān)聽模塊、核心的創(chuàng)建上下文環(huán)境模塊、加載配置環(huán)境模塊等。再指定應(yīng)用配置模塊,該模塊作為框架的配置核心,為應(yīng)用的系統(tǒng)配置。系統(tǒng)啟動流程如圖3所示。

3.2 組件裝配過程

建立應(yīng)用程序框架,即完成組件裝配過程。按應(yīng)用軟件框架要求,搜索并適配組件及組件接口相關(guān)功能實現(xiàn)。開發(fā)環(huán)境啟動完成后,將可以進(jìn)行軟件開發(fā)。

例如,Web應(yīng)用軟件框架模型是由控制組件、功能組件、視圖組件等組裝而成。功能組件的程序結(jié)構(gòu)必須符合基本模板,主要包括數(shù)據(jù)接口,完成數(shù)據(jù)獲取與定義,具體的實現(xiàn)與設(shè)計可以參考模板。控制組件屬于容器通信引擎,用于系統(tǒng)控制。操作流程包括配置文件設(shè)置、中間件容器環(huán)境的初始化、請求并讀取數(shù)據(jù)流、調(diào)度算法時進(jìn)行實時計算以及注入視圖組件獲取結(jié)果。前端視圖組件主要實現(xiàn)UI,通過調(diào)用數(shù)據(jù)接口,實現(xiàn)數(shù)據(jù)注入,完成軟件界面開發(fā),分為Web組件和平臺組件。本W(wǎng)eb組件采用基于HTML5+CSS3 +JQUERY開發(fā)的一整套專注服務(wù)與UI的前端視圖框架。開發(fā)流程如下:

(1)整體設(shè)計階段。由于應(yīng)用程序本身就是一個有序協(xié)同工作的框架,并不是簡單將這些組件拼接在一起,開發(fā)一個完整軟件需要合理的架構(gòu)設(shè)計。程序設(shè)計依賴于應(yīng)用本身,首先需進(jìn)行軟件系統(tǒng)結(jié)構(gòu)設(shè)計。

(2)組件準(zhǔn)備階段。由程序員對引用的各類組件模板進(jìn)行二次開發(fā),即對組件接口進(jìn)行業(yè)務(wù)功能開發(fā),當(dāng)然也可以直接使用具體應(yīng)用組件或第三組件,根據(jù)需求設(shè)計實現(xiàn)目標(biāo)應(yīng)用程序的開發(fā)。整體架構(gòu)又可分子框架,主要是面向粗顆組件進(jìn)行設(shè)計,例如日志、安全等這一類功能。

(3)裝配階段。由于本框架容器是組件的載體,所以容器可以看成是組件的活動場所,程序員只要操控組件裝配接口,即可組裝程序。在云服務(wù)器上進(jìn)行裝配完成部署。因此利用本框架可以軟件一體化開發(fā)、部署和發(fā)布。同時也易于維護(hù)及升級軟件,在云服務(wù)器上裝配的應(yīng)用程序具有很高的伸縮性,不但組件裝缷,還可以對單個組件某個功能進(jìn)行裝缷。當(dāng)應(yīng)用程序需要升級或添加某項功能時,可以將相關(guān)組件接口進(jìn)行直接升級與功能添加的開發(fā),既便于維護(hù)也便于拓展功能。

4 結(jié)束語

本文實現(xiàn)了可移植、可擴展、可復(fù)用的針對實時流數(shù)據(jù)計算的高性能分層式組件式的中間件軟件系統(tǒng),為云環(huán)境下提供一種面向組件的統(tǒng)一的開發(fā)、部署和集成方式中間件軟件開發(fā)方法,并可以使應(yīng)用軟件在云計算平臺進(jìn)行大數(shù)據(jù)處理與彈性計算,極大發(fā)揮云平臺的優(yōu)勢。實踐證明,本軟件架構(gòu)有效性、易構(gòu)、安全、可靠性。

參考文獻(xiàn)

[1]左海春. 跨平臺移動輕量級動態(tài)裝配式軟件開發(fā)框架設(shè)計研究[J]. 河北省科學(xué)院學(xué)報, 2017,34(3);7-10.

[2]虞佳晉. 面向分布式實時嵌入式系統(tǒng)的通用組件模型的研究與實現(xiàn)[D]. 南京:東南大學(xué),2017.

[3]王慕所. 面向組件的通信中間件技術(shù)研究[D]. 杭州:浙江大學(xué),2017.

张家港市| 攀枝花市| 峡江县| 富蕴县| 兴海县| 宜章县| 绥化市| 阆中市| 临泉县| 图木舒克市| 莱州市| 嘉黎县| 陇川县| 梁河县| 都安| 吕梁市| 农安县| 保德县| 昌平区| 江孜县| 新兴县| 错那县| 柳州市| 山东省| 舞钢市| 张北县| 高雄县| 晋江市| 大方县| 龙海市| 越西县| 遂昌县| 北流市| 山东| 高青县| 呼图壁县| 安徽省| 祁阳县| 东明县| 调兵山市| 阿巴嘎旗|