四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

基于消息與.Net Remoting的分布式處理架構

      分布式處理在大型企業應用系統中,最大的優勢是將負載分布。通過多臺服務器處理多個任務,以優化整個系統的處理能力和運行效率。分布式處理的技術核心是完成服務與服務之間、服務端與客戶端之間的通信。在.NET 1.1中,可以利用Web Service或者.NET Remoting來實現服務進程之間的通信。本文將介紹一種基于消息的分布式處理架構,利用了.NET Remoting技術,并參考了CORBA Naming Service的處理方式,且定義了一套消息體制,來實現分布式處理。 

   一、消息的定義

       要實現進程間的通信,則通信內容的載體——消息,就必須在服務兩端具有統一的消息標準定義。從通信的角度來看,消息可以分為兩類:Request Messge和Reply Message。為簡便起見,這兩類消息可以采用同樣的結構。

       消息的主體包括ID,Name和Body,我們可以定義如下的接口方法,來獲得消息主體的相關屬性:

 public interface IMessage:ICloneable
{
IMessageItemSequence GetMessageBody();
string GetMessageID();
string GetMessageName();
void SetMessageBody(IMessageItemSequence aMessageBody);
void SetMessageID(string aID);
void SetMessageName(string aName);
}

   三、業務服務對于消息的處理

       前面實現的服務架構,已經較為完整地實現了分布式的服務處理。但目前的實現,并未體現對消息的處理。我認為,對消息的處理,等價與具體的業務處理。這些業務邏輯必然是在服務端完成。每個服務可能會處理單個業務,也可能會處理多個業務。并且,服務與服務之間仍然存在通信,某個服務在處理業務時,可能需要另一個服務的業務行為。也就是說,每一種類的消息,處理的方式均有所不同,而這些消息的唯一標識,則是在SendRequest()方法已經有所體現的aMessageName。

       雖然,處理的消息不同,所需要的服務不同,但是根據我們對消息的定義,我們仍然可以將這些消息處理機制抽象為一個統一的格式;在.NET中,體現這種機制的莫過于委托delegate。我們可以定義這樣的一個委托:

public delegate void RequestHandler(string aMessageName,IMessageItemSequence 
aMessageBody,
ref IMessageItemSequence aReplyMessageBody);

NET技術基于消息與.Net Remoting的分布式處理架構,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 刑事侦缉档案2剧情介绍| 香港之夜免费观看视频完整版 | 项目负责人任命书| 二胡独奏我的祖国| 欧美13| 北京宝哥打小混混视频| 监狱女狱警的电影叫啥来着| 南宝拉| 好一个中国大舞台简谱| 密桃成孰时| 一年级下册语文期末测试卷可打印| 乔治克鲁尼个人资料| 士兵突击演员| 荒笛子简谱| 让雷诺阿| 456电影456重口味是免费观看| 旗袍电视剧演员表大全| 中医基础理论试题题库及答案| 免费看黄在线看| 80后相声新人李丁个人简历| 庆余年2豆瓣| 2014年9月日历表查询| 被五六个女同学掏蛋| 女孩们电影| 邓为个人介绍| 张大民的幸福生活| 柚子猫卡夫卡的心理暗示在线观看 | the blues| 金靖星座| 好好说话电视剧免费观看完整版40集| 家书1000字| 寡妇高潮一级毛片情欲小说| 风云太白山电影| 我的公主| 吴政世| 露底| 拔萝卜歌谱| 吴政世| 电影《kiskisan》在线播放| 皮肤诊所| 大内密探零零发演员表|