<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    迷途書童

    敏感、勤學、多思
    隨筆 - 77, 文章 - 4, 評論 - 86, 引用 - 0
    數據加載中……

    快速構建面向服務的應用-1

    不知不覺畢業已經四載有余,幾年來一直和太陽公公比著賽上班,披星戴月著下班。隨著年齡和資歷的增長,工作和生活的時間比值竟然越來越大,回首過去,偶爾也感嘆一聲,真是驢一樣的年華。

    近年來中國的IT也發展的紅紅火火,人才輩出,網絡上好文比比皆是,但是卻沒有一篇是我的,真是悲哉

    女朋友走了,時間多了,百無聊賴之際,努力想為我慢慢逝去的青春留下一點可供回憶的東西,琢磨著寫一篇記錄我的一些火花的文章,也希望能給網絡上的朋友們提供一些參考,為祖國的IT業盡一點綿薄之力,便是我最大的心愿。

    廢話少說,開始進入主題,我的火花是“建立一套快速構建面向服務的應用應用生成環境,簡稱ACEApplication Creation Environment)”以及對應的“應用執行環境(AEEApplication Execution Environment)”。

    第一篇         面向服務的快速應用生成環境

    案例和問題就不分析了,無非是什么支撐業務快速上線、快速響應用戶需求、降低開發成本、淘到第一桶金、抓住用戶的心、實現業務敏捷等等之流。每當做起這種事情就頭痛不已,但是領導又最喜歡看這種東西

    目標:

    l  基于MDA的思想,建立一套端到端的開發環境,端到端指從前臺展現邏輯到后臺業務邏輯、數據持久邏輯、業務流程邏輯等。保守估計,期望至少能夠減少開發工作量的50%以上(本人一向比較低調)。

    l  支撐面向服務的應用程序構建,不綁定特定實現環境。如,不綁定C++或者java等特定的實現方式。

    l  不局限于某種特定的界面展現技術,如swingweb等。

    l  不局限于服務的分布方式,如不要求服務一定在本地,可以在本地也可以部署在世界各地。

    姑且按照我的愚見,對一個典型的應用參考DDD的理念作一下抽象,后面全部按照這種理解來推導ACE應是何物:


    一個典型的企業應用的元模型

    從上圖中,可以看出,DDD中的主要類型的領域對象都在:RepositoryServiceEntity Process也是一種特化的service。還有一個東東:DataView,不知道叫它什么好,先不費腦筋去給他取名了。

    下面一一解釋這些東東的含義:

    Name

    Introduction

    Association

    Remark

    Data Entity

    數據實體

    表示企業應用中的數據實體,比如訂單管理系統中的訂單對象就是一個數據實體。

    數據實體之間可能有關聯。比如訂單對象關聯多個訂單項對象。

    Data View

    數據視圖

    表示數據實體的一個視圖,也可能是多個有關聯的數據實體的一個視圖。類似于DB中的視圖的概念。

    數據視圖關聯一個或者多個數據實體。無須多解釋,參考數據庫視圖就可以了。

    Service

    服務

    表示企業應用中的服務對象。比如訂單管理系統中的訂單服務。服務的粒度可大可小,原子服務也可以聚合成業務服務。類似SCA中的服務聚合。

    服務可能聚合服務形成大粒度服務。服務可能接收數據對象,輸出另外的數據對象。

    服務不能包含有與特定應用上下文相關的狀態信息,不然影響復用。每個服務對服務的使用者來說是無狀態的。

    Process

    流程

    各種各樣的流程的頂層抽象,流程也是一種特殊的服務

    所有的流程都將有服務參與。因此流程與服務有依賴關系。

    Operation Process

    操作流程

    表示一個業務邏輯處理過程,比如我們計算一個四則混合運算表達式的時候,心里會先分解城一個一個的計算單元,然后先算某個單元再算某個單元,算完收工。這一個一個的有次序執行的計算單元就是一個操作流程。這種流程的生命周期很短,流程運行數據不需要持久化,一次調用就走完,不走完就完全失敗。

    操作流程可能與數據實體和服務關聯,比如做四則混合運算的操作流程,要接受數據,接收了數據之后呢,要調用各種加減乘除服務來做計算單元的運算。

    Business Process

    業務流程

    業務流程表示數據實體的一個有次序的處理過程。這種流程表示人工協作處理一件事情的一個過程。就是常用的工作流的概念。

    業務流程肯定要和數據實體、服務關聯的。這個就不詳細說明了。

    Orchestration Process

    編排流程

    編排各應用系統暴露的服務達成業務目標,一種實現就是BPEL

    編排流程肯定要和服務和數據實體關聯,也不多說,看BPEL規范就是了

    View Process

    視圖流程

    數據實體通過數據視圖來展現,而數據視圖之間的變遷,以及數據視圖與服務之間的關聯則由視圖流程來表述。視圖流程的一種實現技術就是頁面流,不過目前的頁面流都綁定了web,其實數據和服務的展現(接入)方式有很多種,比如IVR接入,web接入,swing接入等等。

    和服務和數據實體關聯。

    Signaling process

    信令流,表示電信業務中的信令交互流程

    跟服務和數據實體關聯

    Repository

    倉庫

    DDD中的倉庫對象,保存數據實體的領域對象。

    與數據對象關聯。被服務對象調用。

    DAO

    數據訪問對象

    負責從某種特定的存儲介質中存儲和retrieve數據實體。用于避免倉儲對象依賴特定的存儲介質,如DB,文件系統等。

    是數據對象關聯,被倉儲對象調用。

    Permission

    權限

    指對數據實體能夠執行的操作的權限,如增、刪、改、查,可能要控制到數據實體的屬性粒度。也有可能對服務有訪問權限控制,即允不允許用戶執行某個服務。

    權限跟數據實體或服務關聯。


    posted on 2008-11-07 23:50 迷途書童 閱讀(1718) 評論(2)  編輯  收藏 所屬分類: 隨感系統設計java應用SOA

    評論

    # re: 快速構建面向服務的應用  回復  更多評論   

    good but difficult to understand
    2008-11-08 00:19 | serena

    # re: 快速構建面向服務的應用  回復  更多評論   

    面向構件的開發?
    2008-11-11 09:46 | 單飛
    主站蜘蛛池模板: 色窝窝亚洲av网| 亚洲精品国产精品国自产网站 | 亚洲AV日韩AV永久无码色欲 | 亚洲精品免费在线观看| 久久精品夜色噜噜亚洲A∨| 免费看一级高潮毛片| 免费大黄网站在线看| 特级毛片A级毛片100免费播放| 国产中文字幕免费观看| 青草青草视频2免费观看| 亚洲国产精品无码久久青草| 日韩免费高清一级毛片| 伊人久久精品亚洲午夜| a级毛片高清免费视频就| 久久精品国产亚洲| 久久精品国产亚洲av成人| 嫩草成人永久免费观看| 亚洲欧洲在线播放| 最好免费观看韩国+日本| 免费无码专区毛片高潮喷水 | 国产免费的野战视频| 在线综合亚洲欧洲综合网站| 国产大片51精品免费观看| 亚洲黄片手机免费观看| 香蕉视频在线观看亚洲| 美女被cao免费看在线看网站| 亚洲国产综合无码一区| 麻豆成人久久精品二区三区免费| 亚洲无人区视频大全| 国产福利免费在线观看| 男女拍拍拍免费视频网站| 亚洲视频一区二区三区| 狠狠久久永久免费观看| 精品97国产免费人成视频| 亚洲乱码卡三乱码新区| 亚洲av高清在线观看一区二区| 亚洲国产AV无码一区二区三区| 国产成人精品亚洲精品| 久久久久久曰本AV免费免费| 亚洲国产精品无码第一区二区三区 | 中文字幕不卡高清免费|