Skip to content
88250 edited this page Sep 30, 2014 · 24 revisions

应用消息服务

在 gopush-cluster 基础上做了扩展,加入了用户、群、组织机构等应用元素。

概要

  • 在 gopush 中进行实现(web 进程)
  • 用户登录后返回
    • id:作为 gopush 的 key
    • token:用于身份验证
  • 用户/应用/群/组织机构都是使用 id 作为 key
  • 用户未登录时使用默认的 key
  • 用户发送群组消息时转为对该群组内所有用户的 id 批量发送
  • 对外提供对应用数据管理的 RESTful 接口,例如用户 CRUD

数据库表

  • 用户
  • 组织机构
  • 应用
  • 用户-群关联

Name

发送/监听时使用 Name 作为 gopush-cluster 的 key,规则是在对应的数据库记录 id 上加 @后缀

  • 组织机构单位:@tenant
  • 组织机构部门:@org
  • 群:@qun
  • 用户:@user
  • 应用:@app

开发中可以使用定义在 app/config.go 中的常量。

开发

  • 熟悉 gopush-cluster 的架构
  • 项目只能在 Linux 下开发(通过虚拟机方式方便一些)。

web 模块

迁出项目后需要修改 web.conf,用于在当前目录下运行的默认配置文件。

  • base.app.bind:应用接口监听端口
  • zookeeper.addr:gopush-cluster 集群节点通知
  • user daniel:当前操作系统登录用户
  • IP 绑定

启动命令 ./web -v=1 -logtostderr=true

Postman

Postman 是一个 Chrome 扩展,用于开发时调试 HTTP 接口。

GitBook

部署

  • static、view 需要放到 bin 目录下
Clone this wiki locally