關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于接收表的ESB研究與設計

        基于接收表的ESB研究與設計

        作者: 時間:2009-12-16 來源:網絡 收藏


        在上述xml形式的接收者計算邏輯中,以服務單元B為例對規則庫進行說明。“rule name=”region”value=”Beijing”>/rule>”定義了服務地域的規則,即只服務北京的客戶,“rule name=”client”value=”enterprise”>/rule>”定義了服務客戶類型的規則,即只服務于企業,“rulename=”maxloanamout”value=”5 000”>/rule>”定義了服務項貸款的最大金額,其值為5 000萬元。
        獲取接收者列表的算法,可以進行如下描述:S為服務單元的集合,Si為的某個服務單元。ri為服務單元i的規則集,rij為服務單元i的某條規則,servicerList為接受者列表,在初始化時加載所有的服務單元(1≤i≤n,1≤j≤m,n為節點的個數,m為某個服務節點的規則的個數)。


        //如果不能滿足此服務單元的路由規則,則接收者列表中刪除此服務單元。

        1.2 動態化
        為了使服務能夠動態的調整自己的服務對象,提高整個系統集成的靈活性。將路由規則分布到各個服務來控制,是一種理想的解決方案。通過接收表的動態化,整個系統的實時性也有進一步的提高。例如,服務單元N以前只能處理貸款金額1 000萬元的服務請求,而服務單元N進行系統升級后,可以處理貸款金額1億元的服務請求,此時應該對接收表中規則庫做相應的調整。為了實現這種功能,應在服務節點和接收表之間建立控制信息傳輸通道,使得服務節點能把自己處理消息的要求發送給接收表,并存儲到其規則庫中,其流程如圖2所示。

        接口程序是由路由器提供,服務單元只需調用的(修改xml路由文件)服務接口,實現對接收表計算邏輯的修改。
        接口設計:
        class ServiceOperation
        {
        CreateServicer(Servicel s);//創建服務
        UpdateServicer(Serricer s);//更新服務包括服務名,路徑的修改
        RemoveServicer(String ServicerID);//根據服務的ID刪除對應服務在路由器中的信息
        CreateServicerRule(String ServicerID,StringruleName,String rule Value);
        //根據服務的ID,創建該服務新的規則
        UpdateServicerRule(String ServicerID,StringruleName,String ruleValue);
        //根據服務的ID和規則的名稱,更新規則的值
        RemoveServicerRule(String ServicerID,StringruleName);
        //根據服務的ID和規則的名稱,刪除該規則
        }
        此接口應以Web服務的方式暴露給與集成的服務單元,使其可以調用接口中的方法來實時改變服務單元的服務。



        關鍵詞: ESB

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 聂拉木县| 大丰市| 龙江县| 永平县| 旺苍县| 延吉市| 金堂县| 顺义区| 大足县| 富蕴县| 隆尧县| 吉安市| 博罗县| 珠海市| 永善县| 吉木萨尔县| 绿春县| 乌鲁木齐县| 吐鲁番市| 顺义区| 万全县| 台南县| 紫金县| 拜泉县| 和田县| 田东县| 邯郸市| 同心县| 仙游县| 灵寿县| 安陆市| 大丰市| 沙坪坝区| 宿迁市| 荥阳市| 兴海县| 新竹县| 西平县| 澄江县| 达孜县| 九寨沟县|