消息中心设计模式UML图
2016-10-10 14:30
1031 查看
简单描述下在一家公司消息中心组件对不同消息设备处理,简要类图如下
说明根据设备来源已有的包含安卓,苹果,微信公众号,支付宝服务窗4种:
IMessagePush:推送业务接口
IDbOperations:消息持久化接口(暂时存在Redis集群,对未到达app的消息会有“再登录拉取离线消息”补偿机制)
IWrapMsg:消息模板组装接口,系统中含有不同业务的消息在推送app之前做模板组装
AppAbstractHandler:app抽象推送类,是android与ios推送方式的父类。
ThirdPlatAbstractHandler:接入三方抽象推送类,已有的微信,支付宝两种。限制方法getTemplateParam(redis中查询平台的消息模板参数),getUrl跳转平台的url链接
由类图可以看到我并没有对三方的消息做离线持久化,原因是三方的方法我们并不可控
MessageDriver:抽象消息驱动类,它是所有消息类型的父类。最小子类需要实现它的run方法;新增加的其他类别消息都必须继承该类
MessageDriveManager:消息驱动管理类;
线程调用代码块大致如下
说明根据设备来源已有的包含安卓,苹果,微信公众号,支付宝服务窗4种:
IMessagePush:推送业务接口
IDbOperations:消息持久化接口(暂时存在Redis集群,对未到达app的消息会有“再登录拉取离线消息”补偿机制)
IWrapMsg:消息模板组装接口,系统中含有不同业务的消息在推送app之前做模板组装
AppAbstractHandler:app抽象推送类,是android与ios推送方式的父类。
ThirdPlatAbstractHandler:接入三方抽象推送类,已有的微信,支付宝两种。限制方法getTemplateParam(redis中查询平台的消息模板参数),getUrl跳转平台的url链接
由类图可以看到我并没有对三方的消息做离线持久化,原因是三方的方法我们并不可控
MessageDriver:抽象消息驱动类,它是所有消息类型的父类。最小子类需要实现它的run方法;新增加的其他类别消息都必须继承该类
MessageDriveManager:消息驱动管理类;
线程调用代码块大致如下
MessageConfig adapter = new MessageConfig("p1","h2","b3"); int termType =MqSdkConstans.DEVICETYPE.Android; MessageDriveManager manger = new MessageDriveManager(); if(termType ==MqSdkConstans.DEVICETYPE.Android ){ manger.setDriver(new AndroidPushHandler()); }else if(termType ==MqSdkConstans.DEVICETYPE.Ios){ manger.setDriver(new IosPushHandler()); }else if(termType ==MqSdkConstans.DEVICETYPE.Weixin){ manger.setDriver(new WeiXinPushHandler()); }else if(termType ==MqSdkConstans.DEVICETYPE.Alipay){ manger.setDriver(new AliPayPushHandler()); } manger.messagePush(adapter);
相关文章推荐
- 消息订阅、派送设计模式在“平台-插件”式软件架构设计中的应用
- 设计模式学习系列之UML图(创建型模式)
- /LGC设计模式/消息队列的设计与实现
- Objective-C 编程语言(10)选择器----"目标-动作"设计模式、避免发送消息时出错
- 事件触发、分发、observer机制----消息总线架构模式(中介者(调停者)设计模式)
- 消息总线设计系列之 - 观察者模式
- 用代码和UML图化解设计模式之《工厂模式》
- 23个设计模式UML图
- State设计模式 msmq消息队列
- 用代码和UML图化解设计模式之《策略模式》
- 设计模式学习系列之UML图(创建型模式)
- 在c#中实现消息订阅、派送设计模式
- 设计模式学习系列之UML图(行为型模式 上)
- ITStudio-23中设计模式UML图
- 《企业集成模式.设计、构建及部署消息传递解决方案》学习笔记
- 使用Biztalk Server实现基于消息的状态机设计模式
- 设计模式学习系列之UML图(行为型模式 上)
- 基于事件的监听,消息订阅设计模式的实现框架,ERP,OA,复杂,灵活多变的项目的福音
- 事件触发、分发、observer机制----消息总线架构模式(中介者(调停者)设计模式)
- 用代码和UML图化解设计模式之《代理模式》