系統介紹
mpush,是一款開源的實時消息推送系統,采用java語言開發,服務端采用模塊化設計,具有協議簡潔,傳輸安全,接口流暢,實時高效,擴展性強,可配置化,部署方便,監控完善等特點。同時也是少有的可商用的開源push推送系統。
特性和優勢
-
源碼全部開放,包括server、android、ios 、websocket等
-
代碼質量高,全部模塊化設計,真正的商用級產品,考慮到推送中遇到的大部分場景
-
安全性高,基於RSA精簡的加密握手協議,簡單,高效,安全
-
支持斷線重連,及弱網下的快速重連,無網絡下自動休眠節省電量和資源
-
協議簡潔,接口流暢,支持數據壓縮,更加節省流量
-
支持集群部署,支持負載均衡,基於成熟的zookeeper實現
-
用戶路由使用redis集群,支持單寫,雙寫,集群分組;性能好,可用性高
-
支持http代理,一根TCP鏈接接管應用大部分請求,讓http請求更加及時
-
高度可配置化,基本上通過修改配置可滿足大部分場景
-
擴展性強,高度模塊化,基於SPI模式的可拔插設計,以滿足特殊需求
-
監控完善,日志詳細,可快速排查線上問題及服務調優
教程與文檔
源碼
-
oschina http://git.oschina.net/mpush/mpush 碼雲源碼
-
group https://github.com/mpusher/ 源代碼空間
-
server https://github.com/mpusher/mpush 服務端源碼
-
alloc https://github.com/mpusher/alloc 調度器源碼
-
mpns https://github.com/mpusher/mpns 個性化推送中心源碼
-
java-client https://github.com/mpusher/mpush-client-java 純java客戶端源碼
-
android sdk&demo https://github.com/mpusher/mpush-android 安卓SDK和DEMO源碼
-
IOS sdk(swift) https://github.com/mpusher/mpush-client-swift swift版客戶端源碼
-
IOS sdk(OC) https://github.com/mpusher/mpush-client-oc Object C 客戶端源碼
-
websoket(JS) https://github.com/mpusher/mpush-client-js websocket js 客戶端源碼