ACE網(wǎng)絡(luò)編程筆記(1):ACE自適配通信環(huán)境
Posted on 2013-04-08 09:48 C小加 閱讀(2055) 評論(0) 編輯 收藏 引用 所屬分類: 網(wǎng)絡(luò)編程介紹
ACE自適配通信環(huán)境(ADAPTIVE Communication Environment)是可以自由使用、開放源碼的面向?qū)ο螅∣O)構(gòu)架(Framework),在其中實現(xiàn)了許多用于并發(fā)通信軟件的核心模式。ACE提供了一組豐富的可復(fù)用C++Wrapper Facade(包裝外觀)和構(gòu)架組件,可跨越多種平臺完成通用的通信軟件任務(wù),其中包括:事件多路分離和事件處理器分派、信號處理、服務(wù)初始化、進程間通信、共享內(nèi)存管理、消息路由、分布式服務(wù)動態(tài)(重)配置、并發(fā)執(zhí)行和同步,等等。
ACE的目標(biāo)用戶是高性能和實時通信服務(wù)和應(yīng)用的開發(fā)者。它簡化了使用進程間通信、事件多路分離、顯式動態(tài)鏈接和并發(fā)的OO網(wǎng)絡(luò)應(yīng)用和服務(wù)的開發(fā)。此外,通過服務(wù)在運行時與應(yīng)用的動態(tài)鏈接,ACE還使系統(tǒng)的配置和重配置得以自動化。
好處
增強可移植性:在ACE組件的幫助下,很容易在一種OS平臺上編寫并發(fā)網(wǎng)絡(luò)應(yīng)用,然后快速地將它們移植到各種其他的OS平臺上。而且,因為ACE是開放源碼的自由軟件,你無需擔(dān)心被鎖定在特定的操作系統(tǒng)平臺或編譯器上。
更好的軟件質(zhì)量:ACE的設(shè)計使用了許多可提高軟件質(zhì)量的關(guān)鍵模式,這些質(zhì)量因素包括通信軟件靈活性、可擴展性、可復(fù)用性和模塊性。
更高的效率和可預(yù)測性:ACE經(jīng)仔細設(shè)計,支持廣泛的應(yīng)用服務(wù)質(zhì)量(QoS)需求,包括延遲敏感應(yīng)用的低響應(yīng)等待時間、高帶寬應(yīng)用的高性能,以及實時應(yīng)用的可預(yù)測性。
更容易轉(zhuǎn)換到標(biāo)準(zhǔn)的高級中間件:TAO使用了ACE提供的可復(fù)用組件和模式。它是CORBA的開發(fā)源碼、遵循標(biāo)準(zhǔn)的實現(xiàn),并為高性能和實時系統(tǒng)作了優(yōu)化。為此,ACE和TAO被設(shè)計為能良好地協(xié)同工作,以提供全面的中間件解決方案。
體系結(jié)構(gòu)

C++包裝層:ACE中間層,主要功能的實現(xiàn)部分。包括并發(fā)和同步、IPC、內(nèi)存管理組件、定時器類、容器類、信號處理、文件系統(tǒng)組件和線程管理。
構(gòu)架和模式層:ACE高層,架構(gòu)和模式部分。它們的基礎(chǔ)是若干針對特定通信軟件領(lǐng)域的設(shè)計模式。包括事件處理、連接或服務(wù)初始化組件、流組件和服務(wù)配置組件。