0052]步驟S205:通過所述連接進行數(shù)據(jù)的通信。
[0053]具體地,信使模型根據(jù)獲得的對端信使模型信息從內部連接表內查詢到對應的連接,若不存在對應的連接,可以確定此為首次通信,則啟動連接的創(chuàng)建。當獲得到對應的連接后,則可以通過連接將數(shù)據(jù)發(fā)送或接受到指定信使模型。
[0054]優(yōu)選地,在創(chuàng)建從所述第一信使模型到所述第二信使模型的連接時,可創(chuàng)建用于發(fā)送以及接收的兩個線程,單獨處理對應的消息。
[0055]這樣設置能夠保證消息處理的效率。上層應用所發(fā)送的消息被送入消息隊列緩沖池內則返回;具體的消息收發(fā)是由控制線程從消息隊列中取出對應的消息,完成實際的處理工作。實際處理消息的發(fā)送與接收時,將根據(jù)注冊信使的類型選用對應的底層協(xié)議接口進行通信,實現(xiàn)了上層應用的協(xié)議與底層傳輸協(xié)議的匹配。
[0056]在通過對應支持的通信協(xié)議進行數(shù)據(jù)的通信中可進一步包括:
[0057]根據(jù)消息的類型,將通信消息發(fā)送至分發(fā)隊列,通過處理消息分發(fā)的線程分發(fā)到對應的應用中。信使模型當接受到來自某一連接上的消息時,需要將消息進行分發(fā)。根據(jù)消息的不同類型(與上層應用相關),消息將進入分發(fā)隊列,并被處理消息分發(fā)的線程分發(fā)到對應的應用中。至此,消息被成功發(fā)送到目的位置,消息發(fā)送完成。
[0058]本發(fā)明實施例將具體的通訊協(xié)議對通信的實體透明,使得在通信過程中,消息的發(fā)送既可以選用TCP/IP方式進行,也可以采用RDMA協(xié)議進行通信;兩種協(xié)議并存于集群內部通信架構中,而無需在應用層做其他修改。應用在云存儲領域,大大提高了集群部署的靈活性,對應用層具有更高的兼容性,同時在集群內部可通過RDMA高效的傳輸效率來獲得更尚的性能。
[0059]下面對本發(fā)明實施例提供的云存儲的異構消息處理裝置進行介紹,下文描述的云存儲的異構消息處理裝置與上文描述的云存儲的異構消息處理方法可相互對應參照。
[0060]圖3為本發(fā)明實施例提供的云存儲的異構消息處理裝置的結構框圖,參照圖3云存儲的異構消息處理裝置可以包括:
[0061]發(fā)送模塊100,用于第一通信端向第二通信端發(fā)送通信請求;
[0062]獲取模塊200,用于所述第一通信端通過第一信使模型獲取所述第二通信端的第二信使模型的信息;其中,信使模型為不同消息通信的實體根據(jù)支持的通信協(xié)議預先注冊的對應類型的模型;
[0063]通信模塊300,用于根據(jù)所述第一信使模型到所述第二信使模型的連接,通過對應支持的通信協(xié)議進行數(shù)據(jù)的通信。
[0064]可選地,本發(fā)明所提供的云存儲的異構消息處理裝置中通信模塊300可以具體包括:
[0065]查詢單元,用于所述第一信使模型從內部連接表中查詢是否存在到所述第二信使模型的連接;
[0066]通信單元,用于當所述第一信使模型的內部連接表中不存在到所述第二信使模型的連接時,創(chuàng)建從所述第一信使模型到所述第二信使模型的連接;當所述第一信使模型的內部連接表中存在到所述第二信使模型的連接時,則根據(jù)所述連接進行數(shù)據(jù)的通信。
[0067]可選地,本發(fā)明所提供的云存儲的異構消息處理裝置中上述通信單元具體用于:
[0068]當所述第一信使模型的內部連接表中不存在到所述第二信使模型的連接時,創(chuàng)建用于發(fā)送以及接收的兩個線程,單獨處理對應的消息。
[0069]可選地,本發(fā)明所提供的云存儲的異構消息處理裝置中上述通信模塊300具體用于:
[0070]根據(jù)消息的類型,將通信消息發(fā)送至分發(fā)隊列,通過處理消息分發(fā)的線程分發(fā)到對應的應用中。
[0071]可選地,本發(fā)明所提供的云存儲的異構消息處理裝置中通信協(xié)議可以具體包括TCP/IP通信協(xié)議或RDMA通信協(xié)議。
[0072]綜上所述,本發(fā)明所提供的云存儲的異構消息處理方法及裝置,將具體的通訊協(xié)議對通信的實體透明,使得在通信過程中,無需應用層的參與,實現(xiàn)異構消息的處理。本發(fā)明大大提高了集群部署的靈活性,降低了實施成本,獲得了對應用層更高的兼容性,高效的發(fā)揮了網絡帶寬的性能,為集群間通信提供了高效的傳輸能力。
[0073]本說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其它實施例的不同之處,各個實施例之間相同或相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應,所以描述的比較簡單,相關之處參見方法部分說明即可。
[0074]專業(yè)人員還可以進一步意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機軟件或者二者的結合來實現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術方案的特定應用和設計約束條件。專業(yè)技術人員可以對每個特定的應用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應認為超出本發(fā)明的范圍。
[0075]結合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結合來實施。軟件模塊可以置于隨機存儲器(RAM)、內存、只讀存儲器(R0M)、電可編程R0M、電可擦除可編程R0M、寄存器、硬盤、可移動磁盤、CD-ROM、或技術領域內所公知的任意其它形式的存儲介質中。
[0076]以上對本發(fā)明所提供的云存儲的異構消息處理方法以及裝置進行了詳細介紹。本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進行若干改進和修飾,這些改進和修飾也落入本發(fā)明權利要求的保護范圍內。
【主權項】
1.一種云存儲的異構消息處理方法,其特征在于,包括: 第一通信端向第二通信端發(fā)送通信請求; 所述第一通信端通過第一信使模型獲取所述第二通信端的第二信使模型的信息;其中,信使模型為不同消息通信的實體根據(jù)支持的通信協(xié)議預先注冊的對應類型的模型; 根據(jù)所述第一信使模型到所述第二信使模型的連接,通過對應支持的通信協(xié)議進行數(shù)據(jù)的通信。2.如權利要求1所述的云存儲的異構消息處理方法,其特征在于,所述根據(jù)所述第一信使模型到所述第二信使模型的連接,通過對應支持的通信協(xié)議進行數(shù)據(jù)的通信包括: 所述第一信使模型從內部連接表中查詢是否存在到所述第二信使模型的連接; 如果否,則創(chuàng)建從所述第一信使模型到所述第二信使模型的連接; 如果是,則根據(jù)所述連接進行數(shù)據(jù)的通信。3.如權利要求2所述的云存儲的異構消息處理方法,其特征在于,所述創(chuàng)建從所述第一信使模型到所述第二信使模型的連接包括: 創(chuàng)建用于發(fā)送以及接收的兩個線程,單獨處理對應的消息。4.如權利要求1至3任一項所述的云存儲的異構消息處理方法,其特征在于,所述通過對應支持的通信協(xié)議進行數(shù)據(jù)的通信包括: 根據(jù)消息的類型,將通信消息發(fā)送至分發(fā)隊列,通過處理消息分發(fā)的線程分發(fā)到對應的應用中。5.如權利要求4所述的云存儲的異構消息處理方法,其特征在于,所述通信協(xié)議包括TCP/IP通信協(xié)議或RDMA通信協(xié)議。6.一種云存儲的異構消息處理裝置,其特征在于,包括: 發(fā)送模塊,用于第一通信端向第二通信端發(fā)送通信請求; 獲取模塊,用于所述第一通信端通過第一信使模型獲取所述第二通信端的第二信使模型的信息;其中,信使模型為不同消息通信的實體根據(jù)支持的通信協(xié)議預先注冊的對應類型的模型; 通信模塊,用于根據(jù)所述第一信使模型到所述第二信使模型的連接,通過對應支持的通信協(xié)議進行數(shù)據(jù)的通信。7.如權利要求6所述的云存儲的異構消息處理裝置,其特征在于,所述通信模塊包括: 查詢單元,用于所述第一信使模型從內部連接表中查詢是否存在到所述第二信使模型的連接; 通信單元,用于當所述第一信使模型的內部連接表中不存在到所述第二信使模型的連接時,創(chuàng)建從所述第一信使模型到所述第二信使模型的連接;當所述第一信使模型的內部連接表中存在到所述第二信使模型的連接時,則根據(jù)所述連接進行數(shù)據(jù)的通信。8.如權利要求7所述的云存儲的異構消息處理裝置,其特征在于,所述通信單元具體用于: 當所述第一信使模型的內部連接表中不存在到所述第二信使模型的連接時,創(chuàng)建用于發(fā)送以及接收的兩個線程,單獨處理對應的消息。9.如權利要求6至8任一項所述的云存儲的異構消息處理裝置,其特征在于,所述通信模塊具體用于: 根據(jù)消息的類型,將通信消息發(fā)送至分發(fā)隊列,通過處理消息分發(fā)的線程分發(fā)到對應的應用中。10.如權利要求9所述的云存儲的異構消息處理裝置,其特征在于,所述通信協(xié)議包括TCP/IP通信協(xié)議或RDMA通信協(xié)議。
【專利摘要】本發(fā)明公開了一種云存儲的異構消息處理方法及裝置,該方法包括:第一通信端向第二通信端發(fā)送通信請求;所述第一通信端通過第一信使模型獲取所述第二通信端的第二信使模型的信息;其中,信使模型為不同消息通信的實體根據(jù)支持的通信協(xié)議預先注冊的對應類型的模型;根據(jù)所述第一信使模型到所述第二信使模型的連接,通過對應支持的通信協(xié)議進行數(shù)據(jù)的通信。本發(fā)明通過消息中間件對多種協(xié)議的支持,使得集群內節(jié)點/進程間可通過不同協(xié)議傳輸異構消息,而應用層無需關心底層數(shù)據(jù)的傳輸細節(jié)。在降低了集群的部署成本的同時,提高了數(shù)據(jù)傳輸?shù)男?,降低了?shù)據(jù)在網絡中的延遲,充分發(fā)揮了節(jié)點在網絡中的通訊能力。
【IPC分類】H04L29/08
【公開號】CN105516364
【申請?zhí)枴緾N201610041798
【發(fā)明人】梁攀
【申請人】浪潮(北京)電子信息產業(yè)有限公司
【公開日】2016年4月20日
【申請日】2016年1月21日