很多朋友都可能遇到了這樣的問題,當(dāng)處于Internet上的服務(wù)器需要重啟時,及時的通知在線的客戶端退出,客戶端不能采用輪訓(xùn)的方式訪問客戶端,進一步說就是服務(wù)器實時向客戶端發(fā)消息。
解決問題的第一步很多人都比較熟悉,就是在客戶端注冊一個MBR對象,傳送到服務(wù)端,服務(wù)端通過對這個MBR的訪問達到對客戶端進行訪問的目的,可是由于客戶端很可能是通過代理服務(wù)器上的Internet,所以這里就要多了一個難題,服務(wù)器這么樣才能把調(diào)用傳送到客戶端呢?
我的做法時在服務(wù)器的發(fā)送信道中截獲服務(wù)器發(fā)送給客戶端的消息,然后把消息封裝在可跨應(yīng)用域的類的實例中,通過另外的方法送抵客戶端,并在客戶端的接收信道上處理剛到達的消息。
當(dāng)然,這里說的都是概要,由于篇幅和本人時間有限,具體的實現(xiàn)讀者可通過QQ(57019818)
|