java 消息推送_hanbo-push分布式消息推送、IM服务
系統概覽
app接入除了接入restApi(push-admin)之外,還需要兼容connector(push-admin的client,用于和push-server通信)的通信協議。
基于protostuff編解碼,協議定義參考PushRequest.java/PushResponse.java。
推送:只有下行消息(服務端到app)
IM:分上下行消息(app到服務端再到app)
演示
1.創建開發者賬號
2.創建app
APP設備注冊
APP鑒權
推送:鑒權成功后拿到真實的推送服務ip地址,然后建立長連接并發起注冊請求,后續等待后臺推送消息即可。
IM:同上述流程,只不過前提需要建立好友、群組等關系,ok后就可以發起聊天了。
3.選擇APP,點擊發布消息
4.admin收到推送指令,下發給所有當前app關聯的設備id
6.推送服務收到admin轉發的推送指令,依次下發到注冊設備的長連接上
7.客戶端收到來自管理員的推送消息
架構圖
app為移動設備,3rdparty為三方服務(一般時服務端)。
模塊講解
restApi(admin),開放給三方的功能接口。
開發者注冊
app設備鑒權
好友管理
群組管理
推送管理
connector
連接pushServer的橋梁,內置在pushAdmin
自動發現服務
一致性hash路由
客戶端故障轉移
router
維護用戶和連接的映射
維護用戶和服務的映射
pushServer
注冊連接
推送消息
路由轉發
webProxy
對connector做了一層封裝,暴露websocket協議
推送流程
IM流程大致同推送流程,只不過多了一層上行消息(通過restApi發布消息,pushServer再基于好友/群組關系路由到各個對端應用)。
私信回復"hanbo-push"獲取鏈接地址,喜歡的點個關注,一起學習探討新技術。
總結
以上是生活随笔為你收集整理的java 消息推送_hanbo-push分布式消息推送、IM服务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 天玥运维安全网关默认密码_Soul网关发
- 下一篇: java重载_Java的重载与覆盖,傻傻