近年來(lái),“智慧地球”和“智慧城市”概念的出現(xiàn),引發(fā)了建設(shè)智慧城市的熱潮。智慧社區(qū)是智慧城市中非常重要的組成部分。智慧社區(qū)是一個(gè)綜合性的平臺(tái),集物業(yè)管理、電子商務(wù)、智慧家居、社區(qū)報(bào)警、社區(qū)停車(chē)場(chǎng)管理等于一身。目前,智慧社區(qū)應(yīng)用還處于初級(jí)階段。雖然出現(xiàn)了融合物聯(lián)網(wǎng)技術(shù)的智慧社區(qū)解決方案,但其應(yīng)用大多還處于低級(jí)、試行階段,對(duì)于應(yīng)用需求的挖掘還不充分。此外,還體現(xiàn)在智慧社區(qū)的發(fā)展很不平衡,因其成本和消費(fèi)水平的原因,主要集中在一線大都市。但可以預(yù)見(jiàn)智慧社區(qū)的建設(shè)必將從大城市向周邊輻射。
SOA架構(gòu)在智慧社區(qū)綜合管理平臺(tái)中的應(yīng)用
在建設(shè)智慧社區(qū)時(shí),除了需要硬件的配套之外,與之配套的軟件系統(tǒng)也非常重要。沒(méi)有復(fù)雜的軟件系統(tǒng)就無(wú)法充分利用硬件資源,達(dá)到智能化的水平。利用SOA(Service-Oriented Architecture,即面向服務(wù)的架構(gòu)),來(lái)構(gòu)架智慧社區(qū)管理平臺(tái)。可以充分地利用企業(yè)現(xiàn)有的資源,通過(guò)把原有的子系統(tǒng)封裝成為服務(wù)的方式提供給上層業(yè)務(wù)使用。不僅能夠加快項(xiàng)目的開(kāi)發(fā),同時(shí)也節(jié)省了重新開(kāi)發(fā)原有系統(tǒng)功能的成本。
SOA架構(gòu) 什么是SOA架構(gòu)在正式談?wù)揝OA之前,首先來(lái)看看2014年*。在*的賽場(chǎng)上每支球隊(duì)上場(chǎng)十一名球員,由十一名球員可以組成許多不同的陣形,如4-4-2,4-3-3。在球場(chǎng)上可以看到一個(gè)SOA架構(gòu)的縮影,每名球員是一個(gè)獨(dú)立的組件或者說(shuō)服務(wù)。使用球員們的不同組合可以快速組建不同的陣形以應(yīng)對(duì)各種突發(fā)情況。甚至在必要的時(shí)候可以更換新的球員來(lái)適應(yīng)賽場(chǎng)上的變化。足球的話題到此為止,接下來(lái)回歸到正題上來(lái),看看SOA是如何定義的。
SOA(Service-Oriented Architecture),即面向服務(wù)的架構(gòu),zui初由的IT研究與顧問(wèn)咨詢(xún)公司Gartner于1996年提出,但由于當(dāng)時(shí)的技術(shù)水平和市場(chǎng)環(huán)境尚不具備真正實(shí)施SOA的條件,SOA并未引起人們的真正關(guān)注,因此在接下來(lái)相當(dāng)長(zhǎng)一段時(shí)間內(nèi)歸于沉寂。進(jìn)入21世紀(jì)之后,Internet風(fēng)起云涌,越來(lái)越多的企業(yè)將業(yè)務(wù)轉(zhuǎn)移到互聯(lián)網(wǎng)領(lǐng)域,帶動(dòng)了電子商務(wù)的蓬勃發(fā)展。為了能夠?qū)⒐緲I(yè)務(wù)打包成獨(dú)立的、具有強(qiáng)大伸縮性的可跨越Internet訪問(wèn)的服務(wù),人們提出了Web服務(wù)的概念,這是SOA實(shí)踐的真正發(fā)端。如今SOA備受矚目,展現(xiàn)其強(qiáng)大能力。
SOA架構(gòu)的優(yōu)勢(shì)
正如之前足球隊(duì)的比喻一樣,面向服務(wù)的體系結(jié)構(gòu)是一個(gè)組件模型,它將應(yīng)用程序的不同功能單元(稱(chēng)之為服務(wù))通過(guò)這些服務(wù)間定義良好的接口起來(lái)。當(dāng)然SOA中有各種針對(duì)不同需求的服務(wù),不止是擁有足球隊(duì)員,而是擁有各種技能的人員。所以如果當(dāng)需要組成的不再是足球隊(duì),而是一個(gè)籃球隊(duì)(需求改變后的系統(tǒng)),SOA也可以輕松選取新的人才組成新的隊(duì)伍。而不需要像傳統(tǒng)的方式一樣把原先的隊(duì)伍改造成新的隊(duì)伍,而當(dāng)現(xiàn)有的人員無(wú)法找到合適的人才來(lái)勝任新的工作時(shí),也可以重新培養(yǎng)新型的人才加入到現(xiàn)有的隊(duì)伍中來(lái)完成
新的工作,同時(shí)不影響原有的人員和隊(duì)伍。SOAzui大的優(yōu)勢(shì)就是可以根據(jù)需求通過(guò)網(wǎng)絡(luò)對(duì)松散耦合的應(yīng)用組件進(jìn)行分布式部署、組合和使用。
SOA的系統(tǒng)能夠更加從容地面對(duì)業(yè)務(wù)的急劇變化。它可以輕易的融入新的組件以應(yīng)對(duì)新的需求,也可以放棄不再需要的組件而不影響系統(tǒng)其他業(yè)務(wù)。
此外SOA是與平臺(tái)無(wú)關(guān)的。其組件可以通過(guò)網(wǎng)絡(luò)進(jìn)行部署和使用的,任何可以訪問(wèn)網(wǎng)絡(luò)的平臺(tái)都可以通過(guò)網(wǎng)絡(luò)使用系統(tǒng)的組件。
SOA通過(guò)建立可組合、可重用的組件來(lái)減少業(yè)務(wù)的冗余和耦合,允許企業(yè)地利用現(xiàn)有的資源,提高系統(tǒng)的開(kāi)發(fā)效率。
SOA能做什么
SOA擁有如此多的優(yōu)勢(shì),但它并不是一項(xiàng)具體的技術(shù),而是一種設(shè)計(jì)模式一種解決方案。SOA提供了一種構(gòu)建IT組織的標(biāo)準(zhǔn)和方法,這套標(biāo)準(zhǔn)通過(guò)把一個(gè)復(fù)雜的系統(tǒng)劃分為一套套更為簡(jiǎn)單的子系統(tǒng),這些子系統(tǒng)之間保持相互獨(dú)立,并且與整個(gè)系統(tǒng)保持一致。而對(duì)于每個(gè)子系統(tǒng)還可以繼續(xù)細(xì)分下去,直到達(dá)到形成一個(gè)個(gè)獨(dú)立組件。這里體現(xiàn)了SOA系統(tǒng)中服務(wù)粒度控制的重要性,是將系統(tǒng)的服務(wù)進(jìn)行粗粒度的封裝,還是需要繼續(xù)細(xì)化進(jìn)行細(xì)粒度的封裝,粒度細(xì)化雖然更加靈活但同時(shí)也使得服務(wù)極易改變。
通過(guò)封裝成服務(wù)的方式,SOA允許一個(gè)企業(yè)地平衡現(xiàn)有的資源和財(cái)產(chǎn),這種體系能夠使得IT部門(mén)效率更高、開(kāi)發(fā)周期更短、項(xiàng)目分發(fā)更快,在幫助IT技術(shù)和業(yè)務(wù)整合方面有著深遠(yuǎn)的意義,它可以:
縮小業(yè)務(wù)和技術(shù)的鴻溝
SOA改變了以往以技術(shù)為中心的信息系統(tǒng)建設(shè)模式,使得IT技術(shù)重新回到業(yè)務(wù)支撐的角色。IT技術(shù)的目標(biāo)是為業(yè)務(wù)、應(yīng)用服務(wù),而不是IT技術(shù)本身的發(fā)展。業(yè)務(wù)人員可以像組裝硬件一樣從業(yè)務(wù)角度即時(shí)構(gòu)造應(yīng)用,從而縮小業(yè)務(wù)和技術(shù)的鴻溝。
軟件資源的共享與重用
SOA提供了一種把原有的組件按一定的標(biāo)準(zhǔn)封裝為具有文檔形式接口描述的服務(wù),從而使服務(wù)的使用者和服務(wù)之間是一種松耦合關(guān)系。這樣,一方面可以把系統(tǒng)封裝為服務(wù)加以復(fù)用,提高了率;另一方面,可以直接調(diào)用外部服務(wù)提供商提供的服務(wù)從而起到復(fù)用的作用。
應(yīng)用的隨需擴(kuò)展
SOA的松耦合特性給應(yīng)用帶來(lái)了極大的靈活性。服務(wù)使用者和服務(wù)提供者在保持接口契約一致性的情況下,可以獨(dú)立演化。基于SOA的應(yīng)用可以看成是一組服務(wù)以及服務(wù)之間松散耦合的集合。因此,一方面新的服務(wù)可以很容易地加入這個(gè)松散集合,另一方面也可以根據(jù)業(yè)務(wù)需求重新編排集合內(nèi)的服務(wù),以生成新的復(fù)合服務(wù)。因此基于SOA的應(yīng)用具有易于改變、易于擴(kuò)展的特點(diǎn),從而支持了業(yè)務(wù)的快速反應(yīng)和敏捷性。
總之,SOA試圖將網(wǎng)絡(luò)上需要共享的各種資源統(tǒng)一以服務(wù)的形式進(jìn)行封裝和接入,讓它們?cè)谖锢砩媳3址植甲灾蔚耐瑫r(shí)實(shí)現(xiàn)以“虛擬信息中心”為基礎(chǔ)的邏輯上的一體化管理,以透明的方式進(jìn)行資源的優(yōu)化選取、按需中介和有效訪問(wèn),并能夠支持用戶(hù)主動(dòng)參與應(yīng)用配置。
SOA在智慧社區(qū)的應(yīng)用
智慧社區(qū)
隨著信息技術(shù)發(fā)展和人民生活水平的提高,智能小區(qū)和智能社區(qū)獲得了長(zhǎng)足的發(fā)展,為了適應(yīng)信息技術(shù)的發(fā)展和智慧城市的建設(shè),提出了智慧社區(qū)的理念和建設(shè)智慧社區(qū)的需求。其特點(diǎn)主要表現(xiàn)在以下方面:
·智慧社區(qū)應(yīng)具有完備的局域網(wǎng)和廣域網(wǎng)、互聯(lián)網(wǎng)接入。通過(guò)網(wǎng)絡(luò)可以實(shí)現(xiàn)社區(qū)機(jī)電設(shè)備和家庭電器的自動(dòng)化、智能化監(jiān)控,實(shí)現(xiàn)一體化、聯(lián)動(dòng)安防系統(tǒng)的自動(dòng)化、智能化監(jiān)控。
·智慧社區(qū)應(yīng)用現(xiàn)代數(shù)字技術(shù),包括現(xiàn)代傳感技術(shù),數(shù)字信息處理技術(shù)、數(shù)字通信技術(shù)、計(jì)算機(jī)技術(shù)、多媒體技術(shù)和網(wǎng)絡(luò)技術(shù),加快了信息傳播的速度,提高了信息采集、傳播、處理、顯示的性能。
·智慧社區(qū)提高了系統(tǒng)的集成優(yōu)化程度,實(shí)現(xiàn)了信息和資源的共享。
·智慧社區(qū)是智慧城市的信息節(jié)點(diǎn),智慧社區(qū)的建設(shè)為智慧城市的建設(shè)提供了條件,為電子政務(wù)、電子商務(wù)、物流等現(xiàn)代化技術(shù)的應(yīng)用打下了基礎(chǔ)。
SOA的智慧社區(qū)管理系統(tǒng)
由智慧社區(qū)的理念和需求可以知道它是海量信息交匯的節(jié)點(diǎn),因此需要一個(gè)綜合的信息管理平臺(tái)。該平臺(tái)應(yīng)對(duì)能夠采集和存儲(chǔ)監(jiān)控信息并做相應(yīng)計(jì)算分析,實(shí)時(shí)處理大量用戶(hù)的請(qǐng)求,并且具有良好的安全性和穩(wěn)定性。一個(gè)智慧社區(qū)管理系統(tǒng)通常包含以下子系統(tǒng):智能家居服務(wù)子系統(tǒng)、社區(qū)物業(yè)管理子系統(tǒng)、社區(qū)娛樂(lè)購(gòu)物子系統(tǒng)、社區(qū)停車(chē)場(chǎng)子系統(tǒng)、社區(qū)報(bào)警運(yùn)營(yíng)子系統(tǒng)、社區(qū)監(jiān)控子系統(tǒng)。對(duì)于這些子系統(tǒng),企業(yè)很可能已經(jīng)開(kāi)發(fā)了部分或者全部,并且對(duì)于單獨(dú)的子系統(tǒng)來(lái)說(shuō)依然還適用于當(dāng)前的需求。基于SOA的架構(gòu)便可以充分利用現(xiàn)有的子系統(tǒng),而不需要將所有東西推倒重來(lái)。這樣無(wú)疑可以縮減系統(tǒng)開(kāi)發(fā)時(shí)間和產(chǎn)品上線的時(shí)間。在重用現(xiàn)有資源的同時(shí),也降低了面臨未知技術(shù)問(wèn)題的風(fēng)險(xiǎn),因?yàn)樵械南到y(tǒng)是已知的可控的。技術(shù)風(fēng)險(xiǎn)應(yīng)當(dāng)是在系統(tǒng)需求設(shè)計(jì)階段就進(jìn)行妥善考慮的問(wèn)題。在開(kāi)發(fā)階段遭遇技術(shù)問(wèn)題,那么很可能讓大量開(kāi)發(fā)人員不得不停下腳步等待技術(shù)問(wèn)題的解決,這對(duì)于項(xiàng)目進(jìn)度將造成致命的打擊。
由于SOA可以把業(yè)務(wù)與技術(shù)分離、實(shí)現(xiàn)軟件資源的共享與重用、隨需求擴(kuò)展系統(tǒng),因此基于SOA的智慧社區(qū)管理平臺(tái)可以zui大限度地避免開(kāi)發(fā)過(guò)程中所遇到的風(fēng)險(xiǎn)。
在SOA模式下之下,原有的子系統(tǒng)都將進(jìn)行獨(dú)立的封裝,外部通過(guò)系統(tǒng)提供的服務(wù)來(lái)訪問(wèn)系統(tǒng)資源。各子系統(tǒng)從而與整個(gè)系統(tǒng)解耦,達(dá)到復(fù)用的目的以減少成本。在子系統(tǒng)的開(kāi)發(fā)上無(wú)需考慮復(fù)雜的業(yè)務(wù)流程,集中完成子功能的實(shí)現(xiàn)即可。子系統(tǒng)進(jìn)行分布式的部署,提高系統(tǒng)的并發(fā)性能。在某個(gè)服務(wù)出現(xiàn)故障之時(shí),不會(huì)影響其他的服務(wù),保證了系統(tǒng)的穩(wěn)定性。
在各個(gè)服務(wù)之上的業(yè)務(wù)流程層,由于服務(wù)完成了技術(shù)細(xì)節(jié)上的封裝,業(yè)務(wù)上無(wú)需關(guān)心技術(shù)上的問(wèn)題,只需要根據(jù)用戶(hù)需求使用不同服務(wù)的組合完成復(fù)雜的業(yè)務(wù)流程,從而大大降低了系統(tǒng)整合集成的難度。在遇到暫時(shí)沒(méi)有條件解決或者需要花費(fèi)大量時(shí)間和成本才能解決的技術(shù)難題時(shí),也可以通過(guò)引入第三方的服務(wù),保證不會(huì)因此而導(dǎo)致開(kāi)發(fā)人員不得不等待問(wèn)題的解決而導(dǎo)致項(xiàng)目的延期。對(duì)于那些在未來(lái)一定時(shí)間內(nèi)變化不大的服務(wù),也可以開(kāi)放給第三方使用。
結(jié)束語(yǔ) 基于SOA架構(gòu)的智慧社區(qū)綜合管理平臺(tái)在可用性、性能、可重用性、可擴(kuò)展性、經(jīng)濟(jì)性等方面都有不錯(cuò)的表現(xiàn)。當(dāng)然SOA并不是一個(gè)具體的技術(shù),它不能幫助你解決系統(tǒng)開(kāi)發(fā)時(shí)所遇到的技術(shù)難題,每一個(gè)技術(shù)難題依然需要具體的人員運(yùn)用具體的技術(shù)去解決。SOA能做到指導(dǎo)系統(tǒng)的設(shè)計(jì),讓系統(tǒng)能更從容地應(yīng)對(duì)出現(xiàn)的問(wèn)題。智慧社區(qū)目前還處于發(fā)展的初級(jí)階段,并且開(kāi)始受到各大公司的矚目。可以預(yù)見(jiàn)在不久的將來(lái)智慧社區(qū)將會(huì)迅猛發(fā)展,需求也將日新月異,運(yùn)用一個(gè)良好的設(shè)計(jì)架構(gòu)來(lái)構(gòu)建系統(tǒng)才能夠在劇烈的需求變化中處于不敗之地,SOA正能夠?qū)崿F(xiàn)這個(gè)目標(biāo)。