Mpush 搭建开发环境

本贴最后更新于 2150 天前,其中的信息可能已经水流花落

简介

在之前的文章中,简单地介绍了 mpush 的功能以及相关模块,在本篇中主要介绍本地启动 MPUSH 系统,方便用户快速了解 MPUSH 的主要功能,为后续开发做准备,完成这一步也算是入门了,如果遇到问题欢迎留言,或者是加入 QQ 群:952774305。

mpush 相关服务依赖

MPUSH 使用的服务都是当前主流技术,对于有经验的开发者来说很容易搭建,只依赖于以下两个服务:

  • zookeeper 分布式协调系统,mpush 是一个深度模块化的推送系统,基于 mpush 可以很方便地搭建 mpush 推送集群来满足高并发量业务,因此需要使用 zookeeper 服务来注册各个模块信息,方便模块之间相互发现。
  • sub/push 订阅推送服务,当前 MPUSH 提供了基于 redis 的 sub/push 组件,因此需要搭建 redis,当然 mpush 提供了扩展接口,开发者可以自行实现对应的订阅推送服务,例如:MQ 消息

以上服务搭建不在此讲述,zookeeper/redis 搭建单节服务节点就行。

获取 MPUSH 代码

从 github 中获取 MPUSH 仓库代码:git clone https://github.com/mpusher/mpush 将工程导入自己熟悉的 IDE,作者使用的是 IDEA(当前使用的是 0.8.1 版本,也是写作时的最新版本)。

熟悉工程目录

导入到 IDEA 后,显示工程结构目录如下:
20181222101724png
是一个典型的 Maven 父子工程结构,项目开发者将系统进行模块化划分,结构清晰,各个子模块的功能以及项目之间的关系将在后续进行详细讲解,当前不需要过度关注。

修改配置

配置系统工程所需的 zookeeper 服务以及 redis 服务,这里需要注意一下 mpush 参数使用 HOCON 格式进行配置,参数文件解析方法在静态方法中执行,也就是说在类加载中的初始化阶段完成参数解析,所以可以像使用静态参数一样使用配置文件的配置信息,加载代码片段如下:
20181222110034png
mpush 官方为我们提供了参数配置模板,在 conf 目录下的 reference.conf 就是官方提供的配置模版,为我们提供了默认配置信息,这个文件大家不要去修改它,我们在项目中使用只需要在工程目录下的 resources 文件中添加 application.conf 文件来覆盖默认参数属性,可以参考子模块 mpush-test 中的 resources 目录下的 application.conf 文件,系统解析参数时会将 application.conf 中的参数配置信息覆盖 reference.conf 中的参数信息。
20181222105007png
打开 application.conf 配置文件,修改 mp.zk.server-address 配置以及 mp.redis 配置,如果你的 redis 需要密码校验连接,那么添加密码参数配置,如果没有删除该配置即可,具体配置如下:
20181222110924png

启动项目

当前我们使用 mpush-test 中的测试例子来启动 mpush 服务,在 mpush-test 模块中的 com.mpush.test.server 目录下有一个 ServerTestMain 测试类,启动 public void testSever()这个测试方法,当你看到如下信息时,恭喜你已经成功启动 mpush 服务。
20181222112150png

使用 mpush 服务

mpush 启动时自动提供了 websocket 网页版服务:在浏览器中输入:http://127.0.0.1
:8008/index.html,将出现简单的网页服务,点击 Connect 按钮,将连接至 mpush 服务,当前只是简单的验证功能(PS:push 以及清除是我在测试时添加的)
20181222112828png
你也可以使用 mpush 的 admin 服务,mpush 在启动式时提供了简单的命令服务,通过简单的 socket 来进行通讯,使用换行符进行消息分割,打开命令行控制台:输入指令:telnet 127.0.0.1 3002,连接成功后输入 help 出现帮助信息,输入 count online 显示在线人数,如果之前网页没有关闭,会显示在线人数:1 或者是相应人数,注意 0.8.1 源码(master 分支)中并未实现 push 指令,所以还无法使用 push,不用担心,下一篇文章,我们将讨论如何使用 mpush 进行消息推送。
20181222114347png

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...