2012-03-16 47 views
0

服務器程序如何中斷的客戶端程序? 客戶端和服務器在不同的機器上。 服務器每次文件更改時都希望將文件發送給所有客戶端。 可以向服務器發送信號給客戶端嗎?服務器如何可以中斷客戶端程序?

回答

0

雖然你的問題是不是在要求很清楚,但大致可以按照這個方法,所有的客戶端都應該有的端口,用於新的文件,每當服務器得到了新的文件,它可以在該端口上發送上聽。優選地,客戶端應該具有多線程體系結構,以便客戶端在單獨的線程中監聽新文件。

0

你提的問題是過於寬泛。你甚至不會說你感興趣的技術(例如微軟和Unix)。

一般情況下,客戶應通知服務器。這樣,服務可以知道客戶是誰,並可以確定他們是否有權接收通知。客戶端然後監聽服務器知道要發送的端口,服務器可以向他們發送通知。也許客戶端的請求會告訴服務器發送哪個端口。

0

客戶是否有與服務器的持續連接或者是隻設置了,如果有要傳輸數據的連接?在後者中,你必須建立像Raza所描述的東西。但是在持續連接的情況下,您可以在客戶端 - 服務器連接上設置某種多路複用技術。例如像:

S:0[DATA] 
C:0[DATA] 
S:1[GotFile] 
C:1[GimmeFile] * 
S:0[DATA] 
S:1[File] * 
C:0[DATA] 
C:1[Thanks] * 
S:0[DATA] 

最後一件事,你可以設置一個廣播或組播解決方案,其中您將文件發送到每一個客戶端監聽。但是,安全性很難這樣做,即文件被服務器加密並由客戶端解密。而且你必須確保文件的完整性。

相關問題