<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 | 單飛
    主站蜘蛛池模板: 国产V亚洲V天堂无码| 亚洲熟女少妇一区二区| 亚洲人AV在线无码影院观看| 1024免费福利永久观看网站| 亚洲视频一区调教| 24小时免费看片| 亚洲一级视频在线观看| 日本亚洲免费无线码| 一本色道久久88—综合亚洲精品| 毛片大全免费观看| 久久久久久亚洲av无码蜜芽| 四虎影视免费永久在线观看| 免费无码国产在线观国内自拍中文字幕| 国产精品视_精品国产免费 | 国产成人免费午夜在线观看| 亚洲偷自精品三十六区| 日韩高清在线免费看| 一级特黄录像视频免费| 国产亚洲精久久久久久无码| 91成人在线免费视频| 亚洲av无码不卡久久| 国产片免费在线观看| 久青草视频在线观看免费| 亚洲小视频在线观看| 好男人视频社区精品免费| 免费视频精品一区二区| 亚洲国产综合专区电影在线| 国语成本人片免费av无码| 一区在线免费观看| 亚洲美女中文字幕| 啊灬啊灬别停啊灬用力啊免费看| 一级女人18片毛片免费视频| 亚洲美女视频网站| 亚洲福利中文字幕在线网址| 外国成人网在线观看免费视频| 国产精品亚洲综合五月天| 亚洲午夜国产片在线观看| 久久久久久精品免费免费自慰| 理论片在线观看免费| 久久久久亚洲AV片无码| 免费无码又爽又高潮视频|