環境:nginx+Tomcat服務器 A B C
問題:如果用戶 1 訪問由服務器 A socket服務 ,用戶2 由服務器 C socket服務 ,此時如果用戶 1, 2 想通過 socket 對話 可以什么方案?(socket 集群由 nginx 分配)由於用戶 1,2沒法決定自己訪問哪一台服務器,所以不可能實時同時訪問一台服務器。
情況一:用戶1,2進入系統時候,被nginx同時分配到了服務器8082。此時用戶1想對用戶2發送一信息,此請求又被分配到了服務器8083。那么服務器8083向8082發出請求,讓8082來執行發送程序。
看一下效果圖:
情況二:用戶1,2進入系統時候,被nginx同時分配到了服務器8082及8083。此時用戶1想對用戶2發送一信息,此請求又被分配到了服務器8081。那么服務器8081向8082發出請求,讓8082來執行發送程序。
看一下效果圖:
情況三:用戶1,2進入系統時候,被nginx同時分配到了服務器8083。此時用戶1想對用戶2發送一信息,此請求又被分配到了服務器8083。
看一下效果圖:
集群跑了幾天,目前沒有用戶反應有問題。。。應該
已解決。。。先暫時用一下這方案。。。如果用戶、執行程序都在同一台服務器上直接發送就可以了,反之服務器間通訊實現發送。。。