5. HTTP callback + bridge
Clients
Backend
Service
Ex: Web ServerEx: Desktop、Mobile
Request
黏住Clients
的 Service
Ex: Socket Server
CallbackNotify
6. HTTP callback + bridge
Socket Server 對 Backend 以 HTTP request 方式做類似
註冊+Alive的動作
例如 Socket Server 對Web Server 送出http://<Server
>/register? callback=http://<Server>/recv/userdata
當有其他人透過Web Server 改變資料時,Web Server
就會呼叫 http://<Server>/recv/userdata?user=David
Socket Server 便可以通知 David 的 Client 重新抓資料
7. 需求
bridge的角色需具備 HTTP service 的能力
(Socket Server orWeb Socket Server 皆有)
Backend service 需 implement:
Register
Alive & Auto expire
HTTP request to callback address
8. Question
有多台 Backend 時
Solution A: bridge 對每台 backend 皆註冊
Solution B: Backend 共用一個 register/callback pool
Solution C: Backend 之間可互相溝通,當某個 user
資料被改變時,通知所有提供相同服務的 Backend
Service
只適用 Server to Server,不適用 Server to End
User