色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

基于消息與.Net Remoting的分布式處理架構(gòu)

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

   一、消息的定義

       要實(shí)現(xiàn)進(jìn)程間的通信,則通信內(nèi)容的載體——消息,就必須在服務(wù)兩端具有統(tǒng)一的消息標(biāo)準(zhǔn)定義。從通信的角度來看,消息可以分為兩類:Request Messge和Reply Message。為簡(jiǎn)便起見,這兩類消息可以采用同樣的結(jié)構(gòu)。

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

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

   三、業(yè)務(wù)服務(wù)對(duì)于消息的處理

       前面實(shí)現(xiàn)的服務(wù)架構(gòu),已經(jīng)較為完整地實(shí)現(xiàn)了分布式的服務(wù)處理。但目前的實(shí)現(xiàn),并未體現(xiàn)對(duì)消息的處理。我認(rèn)為,對(duì)消息的處理,等價(jià)與具體的業(yè)務(wù)處理。這些業(yè)務(wù)邏輯必然是在服務(wù)端完成。每個(gè)服務(wù)可能會(huì)處理單個(gè)業(yè)務(wù),也可能會(huì)處理多個(gè)業(yè)務(wù)。并且,服務(wù)與服務(wù)之間仍然存在通信,某個(gè)服務(wù)在處理業(yè)務(wù)時(shí),可能需要另一個(gè)服務(wù)的業(yè)務(wù)行為。也就是說,每一種類的消息,處理的方式均有所不同,而這些消息的唯一標(biāo)識(shí),則是在SendRequest()方法已經(jīng)有所體現(xiàn)的aMessageName。

       雖然,處理的消息不同,所需要的服務(wù)不同,但是根據(jù)我們對(duì)消息的定義,我們?nèi)匀豢梢詫⑦@些消息處理機(jī)制抽象為一個(gè)統(tǒng)一的格式;在.NET中,體現(xiàn)這種機(jī)制的莫過于委托delegate。我們可以定義這樣的一個(gè)委托:

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

NET技術(shù)基于消息與.Net Remoting的分布式處理架構(gòu),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 永康市| 静宁县| 吴忠市| 洞口县| 丽水市| 丰原市| 丰镇市| 晋宁县| 岗巴县| 保山市| 肇州县| 伊宁市| 梁山县| 永靖县| 高阳县| 丰城市| 兴仁县| 平阳县| 九寨沟县| 大荔县| 和静县| 桃园县| 贵定县| 江孜县| 德安县| 蓬溪县| 上杭县| 胶南市| 兰溪市| 神木县| 永兴县| 贵南县| 准格尔旗| 丽水市| 丰城市| 始兴县| 晴隆县| 杭锦旗| 巴里| 杂多县| 岫岩|