同步操作将从 comsince/universe_push 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
这个一个基础的消息通信架构,只在解决服务端与客户端消息通信,可应用于消息推送,即时通信以及由此衍生出来的消息通信业务。本项目基于其他开源项目的基础上, 希望通过合理的分布式架构,解决大规模并发链接的问题,从而适应互联网用户不断增长的需求,本项目将会采用微服务的开发与设计模式进行架构设计,尽量保持各个业务的单一性和高可用性。 这样的目的也是基于业务扩展的方式,方便以后能够在基于此通信架构基础上衍生其他相关业务,从而保持业务的独立性,增加项目的可维护性。
为了开源以及方便部署,将更换RPC框架为
Dubbo
,并且全部基于SpringBoot
为了脚本能够正常工作,请先在你的服务器建立如下目录/opt/boot
,这个是脚本自动查找spring boot工程的目录,该目录下存放所有spring boot工程,具体工程目录结构如下:
push-connector
集群模式下需要进行消息推送,利用redis的sub/pub
进行消息的订阅与发布进而进行全局推送例如push-sub的启动方式,其他类同
# 启动服务
./push-sub start
# 停止服务
./push-sub stop
由于dubbo严格遵守服务依赖启动顺序,请安装顺序启动如下服务
application.properties
配置redis
和zookeeper
地址这里没用使用诸如
nacos
,apollo
外部的配置中心,需要自己手动修改
push.redis.address=redis://172.16.46.213:6379
mvn clean package -Dmaven.test.skip=true
打包springboot jar以下服务如果用户量增加,都可以集群部署
spring-boot-dubbo-push-subscribe
订阅服务/opt/boot/push-sub
├── jvm.ini
├── push-sub //可执行启动脚本
└── log
└── push-sub.log //存放日志
└── lib
└── spring-boot-dubbo-push-subscribe-1.0.0-SNAPSHOT.jar //可运行的jar
spring-boot-dubbo-push-connector
链接服务/opt/boot/push-connector
├── jvm.ini
├── push-connector //可执行启动脚本
└── log
└── push-connector.log //存放日志
└── lib
└── spring-boot-dubbo-push-connector-1.0-SNAPSHOT.jar //可运行的jar
spring-boot-web-push-api
开放推送服务/opt/boot/push-api
├── jvm.ini
├── push-api //可执行启动脚本
└── log
└── push-api.log //存放日志
└── lib
└── spring-boot-web-push-api-1.0.0-SNAPSHOT.jar //可运行的jar
sping-boot-web-push-group
群组服务/opt/boot/push-group
├── jvm.ini
├── push-group //可执行启动脚本
└── log
└── push-group.log //存放日志
└── lib
└── sping-boot-web-push-group-1.0.0-SNAPSHOT.jar //可运行的jar
为了方便用户快速接入消息推送系统,特提供如下SDK
提供消息缓存服务
提供推送Http接口服务,调用推送网关发送推送消息,此接口采用springboot开发web服务
部署connector要同时更新,防止出现redisson发布订阅数据解析问题
redisson 发布时最好使用统一个logger,不然会有序列化问题
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。