国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法

      文檔序號(hào):7797757閱讀:1522來(lái)源:國(guó)知局
      一種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法
      【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法,包括如下步驟:步驟一、定義SignalR通信服務(wù)相關(guān)數(shù)據(jù)表;步驟二、定義SignalR通信服務(wù)端與SignalR通信客戶(hù)端;步驟三、定義SignalR通信服務(wù)管理器。本發(fā)明一種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法基于SignalR技術(shù)實(shí)現(xiàn)的雙工通信能夠在多服務(wù)器負(fù)載均衡環(huán)境下正常工作,并且支持多種類(lèi)型數(shù)據(jù)庫(kù)。
      【專(zhuān)利說(shuō)明】—種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignaIR雙工通信的方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明屬于Web應(yīng)用服務(wù)端和客戶(hù)端雙工通信【技術(shù)領(lǐng)域】,涉及一種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法。
      【背景技術(shù)】
      [0002]常規(guī)的客戶(hù)端瀏覽器和應(yīng)用服務(wù)器之間的通信采用Request/Response模型,在這種模型中,應(yīng)用服務(wù)器只能夠響應(yīng)客戶(hù)端請(qǐng)求,而不能主動(dòng)的向客戶(hù)端發(fā)送數(shù)據(jù)。
      [0003]微軟提供的SignalR通信服務(wù)解決了這個(gè)問(wèn)題,它在客戶(hù)端瀏覽器和Web服務(wù)器之間建立了一條雙工通信通道,它的編程接口支持客戶(hù)端和服務(wù)端主動(dòng)向?qū)Ψ桨l(fā)送數(shù)據(jù)。理論上,通過(guò)Web服務(wù)器路由,SignalR通信服務(wù)可以實(shí)現(xiàn)兩個(gè)客戶(hù)端瀏覽器的實(shí)時(shí)通信服務(wù)。
      [0004]在多服務(wù)器負(fù)載均衡條件下,兩個(gè)客戶(hù)端使用SignalR通信服務(wù)進(jìn)行實(shí)時(shí)通信,兩個(gè)客戶(hù)端可能和兩臺(tái)不同的服務(wù)器建立起雙工通信通道,此時(shí)SignalR通信服務(wù)是不能正確進(jìn)行消息路由的。SignalR通信服務(wù)內(nèi)置了負(fù)載均衡時(shí)的解決方案,但這個(gè)解決方案綁定了 Sql Server數(shù)據(jù)庫(kù),如果在生產(chǎn)環(huán)境中不采用Sql Server數(shù)據(jù)庫(kù),該方案無(wú)法工作。
      [0005]故,針對(duì)上述現(xiàn)有技術(shù)存在的缺陷,有必要開(kāi)發(fā)研究,以提供一種方案,以實(shí)現(xiàn)在多服務(wù)器負(fù)載均衡條件下,基于多種類(lèi)型數(shù)據(jù)庫(kù),SignalR通信服務(wù)能夠正常工作。

      【發(fā)明內(nèi)容】

      [0006]為解決上述問(wèn)題,本發(fā)明的目的在于提供一種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法。
      [0007]為實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案為:
      一種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法,包括如下步驟: 步驟一、定義SignalR通信服務(wù)相關(guān)數(shù)據(jù)表;
      步驟二、定義SignalR通信服務(wù)端與SignalR通信客戶(hù)端;
      步驟三、定義SignalR通信服務(wù)管理器。
      [0008]進(jìn)一步地,在步驟一中,所述數(shù)據(jù)表為SignalR用戶(hù)連接信息表、SignalR消息信息表以及SignalR消息發(fā)送狀態(tài)表。
      [0009]進(jìn)一步地,步驟一具體包括:
      在數(shù)據(jù)庫(kù)中創(chuàng)建SignalR用戶(hù)連接信息表,所述SignalR用戶(hù)連接信息表用于描述雙工通信的連接標(biāo)識(shí)、用戶(hù)標(biāo)識(shí)和雙工通信服務(wù)器映射關(guān)系,數(shù)據(jù)列包括有用戶(hù)ID、用戶(hù)名、連接ID、服務(wù)器ID ;
      在數(shù)據(jù)庫(kù)中創(chuàng)建SignalR消息信息表,所述SignalR消息信息表用于描述通過(guò)SignalR雙工通信發(fā)送的消息基本信息,數(shù)據(jù)列包括有發(fā)送人ID、消息標(biāo)題、消息內(nèi)容、優(yōu)先級(jí)、類(lèi)型、創(chuàng)建時(shí)間; 在數(shù)據(jù)庫(kù)中創(chuàng)建SignalR消息發(fā)送狀態(tài)表,所述SignalR消息發(fā)送狀態(tài)表用于描述消息的發(fā)送狀態(tài),數(shù)據(jù)列包括有發(fā)送服務(wù)器ID、接收人ID、消息ID、發(fā)送狀態(tài)、發(fā)送時(shí)間。
      [0010]進(jìn)一步地,步驟二具體包括:
      定義Connect方法,在Connect方法中更新SignalR用戶(hù)連接信息數(shù)據(jù)表;
      定義Disconnect事件,在DisConnect事件中更新SignalR用戶(hù)連接信息數(shù)據(jù)表;SignalR通信服務(wù)端實(shí)現(xiàn)供業(yè)務(wù)邏輯調(diào)用的通信編程接口,包括向所有在線(xiàn)用戶(hù)發(fā)送消息和向指定接收人發(fā)送消息。
      [0011]進(jìn)一步地,在步驟三中,通過(guò)Web應(yīng)用程序定義定時(shí)器對(duì)象,定時(shí)在數(shù)據(jù)庫(kù)中搜索未發(fā)消息,消息接收者包含在已連接在本服務(wù)器上的用戶(hù)列表中;應(yīng)用程序搜索到可發(fā)消息時(shí),使用SignalR通信通道主動(dòng)將消息推動(dòng)到客戶(hù)端,并更改消息發(fā)送狀態(tài)。
      [0012]相較于現(xiàn)有技術(shù),本發(fā)明一種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法基于SignalR技術(shù)實(shí)現(xiàn)的雙工通信能夠在多服務(wù)器負(fù)載均衡環(huán)境下正常工作,并且支持多種類(lèi)型數(shù)據(jù)庫(kù)。
      【專(zhuān)利附圖】

      【附圖說(shuō)明】
      [0013]圖1是本發(fā)明的流程圖示。
      【具體實(shí)施方式】
      [0014]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
      [0015]如圖1所示,本發(fā)明一種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法,包括如下步驟:
      步驟一、定義SignalR通信服務(wù)相關(guān)數(shù)據(jù)表
      所述數(shù)據(jù)表為SignalR用戶(hù)連接信息表、SignalR消息信息表以及SignalR消息發(fā)送狀態(tài)表;具體地,步驟一中包括有:
      在數(shù)據(jù)庫(kù)中創(chuàng)建SignalR用戶(hù)連接信息表,所述SignalR用戶(hù)連接信息表用于描述雙工通信的連接標(biāo)識(shí)、用戶(hù)標(biāo)識(shí)和雙工通信服務(wù)器映射關(guān)系,數(shù)據(jù)列包括有用戶(hù)ID、用戶(hù)名、連接ID、服務(wù)器ID。
      [0016]在數(shù)據(jù)庫(kù)中創(chuàng)建SignalR消息信息表,所述SignalR消息信息表用于描述通過(guò)SignalR雙工通信發(fā)送的消息基本信息,數(shù)據(jù)列包括有發(fā)送人ID、消息標(biāo)題、消息內(nèi)容、優(yōu)先級(jí)、類(lèi)型、創(chuàng)建時(shí)間。
      [0017]在數(shù)據(jù)庫(kù)中創(chuàng)建SignalR消息發(fā)送狀態(tài)表,所述SignalR消息發(fā)送狀態(tài)表用于描述消息的發(fā)送狀態(tài),數(shù)據(jù)列包括有發(fā)送服務(wù)器ID、接收人ID、消息ID、發(fā)送狀態(tài)、發(fā)送時(shí)間。
      [0018]步驟二、定義SignalR通信服務(wù)端與SignalR通信客戶(hù)端
      定義Connect方法,在Connect方法中更新SignalR用戶(hù)連接信息數(shù)據(jù)表。
      [0019]定義DisConnect事件,在DisConnect事件中更新SignalR用戶(hù)連接信息數(shù)據(jù)表。
      [0020]SignalR通信服務(wù)端實(shí)現(xiàn)供業(yè)務(wù)邏輯調(diào)用的通信編程接口,包括向所有在線(xiàn)用戶(hù)發(fā)送消息和向指定接收人發(fā)送消息;而客戶(hù)端使用javascript函數(shù)監(jiān)聽(tīng)瀏覽器Dom對(duì)象加載、刷新、關(guān)閉事件,在事件發(fā)生時(shí)相應(yīng)調(diào)用服務(wù)端的Connect和DisConnect事件維護(hù)SignalR用戶(hù)連接信息數(shù)據(jù)表。同時(shí),客戶(hù)端使用javascript函數(shù)定義通信編程接口,包括客戶(hù)端發(fā)送消息和客戶(hù)端接收到消息后的處理函數(shù)。
      [0021]步驟三、定義SignalR通信服務(wù)管理器
      其中,Web應(yīng)用程序定義定時(shí)器對(duì)象,定時(shí)在數(shù)據(jù)庫(kù)中搜索未發(fā)消息,消息接收者包含在已連接在本服務(wù)器上的用戶(hù)列表中。應(yīng)用程序搜索到可發(fā)消息時(shí),使用SignalR通信通道主動(dòng)將消息推動(dòng)到客戶(hù)端,并更改消息發(fā)送狀態(tài)。
      [0022]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
      【權(quán)利要求】
      1.一種在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法,其特征在于,包括如下步驟: 步驟一、定義SignalR通信服務(wù)相關(guān)數(shù)據(jù)表; 步驟二、定義SignalR通信服務(wù)端與SignalR通信客戶(hù)端; 步驟三、定義SignalR通信服務(wù)管理器。
      2.根據(jù)權(quán)利要求1所述在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法,其特征在于,在步驟一中,所述數(shù)據(jù)表為SignalR用戶(hù)連接信息表、SignalR消息信息表以及SignalR消息發(fā)送狀態(tài)表。
      3.根據(jù)權(quán)利要求2所述在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法,其特征在于,步驟一具體包括: 在數(shù)據(jù)庫(kù)中創(chuàng)建SignalR用戶(hù)連接信息表,所述SignalR用戶(hù)連接信息表用于描述雙工通信的連接標(biāo)識(shí)、用戶(hù)標(biāo)識(shí)和雙工通信服務(wù)器映射關(guān)系,數(shù)據(jù)列包括有用戶(hù)ID、用戶(hù)名、連接ID、服務(wù)器ID ; 在數(shù)據(jù)庫(kù)中創(chuàng)建SignalR消息信息表,所述SignalR消息信息表用于描述通過(guò)SignalR雙工通信發(fā)送的消息基本信息,數(shù)據(jù)列包括有發(fā)送人ID、消息標(biāo)題、消息內(nèi)容、優(yōu)先級(jí)、類(lèi)型、創(chuàng)建時(shí)間; 在數(shù)據(jù)庫(kù)中創(chuàng)建SignalR消息發(fā)送狀態(tài)表,所述SignalR消息發(fā)送狀態(tài)表用于描述消息的發(fā)送狀態(tài),數(shù)據(jù)列包括有發(fā)送服務(wù)器ID、接收人ID、消息ID、發(fā)送狀態(tài)、發(fā)送時(shí)間。
      4.根據(jù)權(quán)利要求3所述在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法,其特征在于,步驟二具體包括: 定義Connect方法,在Connect方法中更新SignalR用戶(hù)連接信息數(shù)據(jù)表; 定義Disconnect事件,在DisConnect事件中更新SignalR用戶(hù)連接信息數(shù)據(jù)表; SignalR通信服務(wù)端實(shí)現(xiàn)供業(yè)務(wù)邏輯調(diào)用的通信編程接口,包括向所有在線(xiàn)用戶(hù)發(fā)送消息和向指定接收人發(fā)送消息。
      5.根據(jù)權(quán)利要求4所述在多服務(wù)器負(fù)載均衡條件下實(shí)現(xiàn)SignalR雙工通信的方法,其特征在于,在步驟三中,通過(guò)Web應(yīng)用程序定義定時(shí)器對(duì)象,定時(shí)在數(shù)據(jù)庫(kù)中搜索未發(fā)消息,消息接收者包含在已連接在本服務(wù)器上的用戶(hù)列表中;應(yīng)用程序搜索到可發(fā)消息時(shí),使用SignalR通信通道主動(dòng)將消息推動(dòng)到客戶(hù)端,并更改消息發(fā)送狀態(tài)。
      【文檔編號(hào)】H04L29/08GK103873564SQ201410070381
      【公開(kāi)日】2014年6月18日 申請(qǐng)日期:2014年2月28日 優(yōu)先權(quán)日:2014年2月28日
      【發(fā)明者】董亮 申請(qǐng)人:浪潮集團(tuán)山東通用軟件有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1