完整版消息中心构架设计说明书2.docx

上传人:b****7 文档编号:10183788 上传时间:2023-02-09 格式:DOCX 页数:31 大小:449.84KB
下载 相关 举报
完整版消息中心构架设计说明书2.docx_第1页
第1页 / 共31页
完整版消息中心构架设计说明书2.docx_第2页
第2页 / 共31页
完整版消息中心构架设计说明书2.docx_第3页
第3页 / 共31页
完整版消息中心构架设计说明书2.docx_第4页
第4页 / 共31页
完整版消息中心构架设计说明书2.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

完整版消息中心构架设计说明书2.docx

《完整版消息中心构架设计说明书2.docx》由会员分享,可在线阅读,更多相关《完整版消息中心构架设计说明书2.docx(31页珍藏版)》请在冰豆网上搜索。

完整版消息中心构架设计说明书2.docx

完整版消息中心构架设计说明书2

消息中心构架设计说明书

版本:

1.0

变更记录

序号

版本

变更说明

修改人/日期

审批人/日期

1

1.0

创建

李万鸿

11.文档介绍4

1.1文档目的4

1.2文档范围4

1.3读者对象4

1.4参考文献4

1.5术语与缩写解释4

2系统概述5

3设计约束6

4设计策略7

5系统总体结构8

6子系统N的结构与功能15

7开发环境的配置27

8运行环境的配置28

9测试环境的配置29

10其它30

11.文档介绍

1.1文档目的

消息中心接收别的系统发送的消息,再基于一定的规则以邮件、短信、消息等方式推送

消息到pc端和手机端,比如对于attendance迟到、早退、tour超时提醒等需要及时推送相应的信息给相关人员,中心对规则、用户、消息进行管理。

为此,根据“先进实用、稳定可靠”的原则设计本消息中心。

1.2文档范围

消息的接收、发送、保存,对应用用户的管理。

1.3读者对象

开发人员

1.4参考文献

1.5术语与缩写解释

缩写、术语

解释

QoSlevel

QualityofServicelevel

SD

系统设计,SystemDesign

2系统概述

系统主要完成消息的接收、发送和保存,再基于一定的规则以邮件、短信、消息等方式推送消息到pc端或手机,以及对用户、规则、消息进行管理。

系统接收来自别的系统应用用户的消息,然后基于一定的规则把消息进行推送。

3设计约束

1.系统必须遵循国家软件开发的标准。

2.系统用java开发,服务器中间件为tomcat。

3.系统必须稳定可靠,性能高,满足每天40-500万次的推送量。

4.保证消息的成功送达,如果不成功就重发。

4设计策略

1.系统高可用、高性能、易扩展,安全稳定,实用可靠,满足用户的需要。

2.系统可以进行扩展,增加推送的消息种类,增加消息推送的规则。

3.系统可以复用于别的系统的消息推送。

5系统总体结构

5.1系统架构设计

1.逻辑架构

系统采用接口用rocketMQ实现应用用户的消息接收,用drools依据一定的规则进行消息转发,发送邮件、短信、消息到pc端和手机端,消息发送后用

rocketMQ发送结果消息给应用用户。

用户管理发送规则,对不同的消息、发送的方式、发送的时间、接收者进行设置,以后消息中心按照这些规则发送消息。

规则处理采用drools完成。

系统采用MQT■服艮务器mosquito实现消息对手机端的推送,采用winsocket发送消息给pc端。

MQTT通过发布/订阅方式发送消息给手机,方式为发布/订阅,为了实现点对点发送,需要在发送的消息里加上手机端的imei和用户名,同时

在手机端进行判断,如果imei和用户名符合则接收此消息。

采用winsocket实现推送消息到pc端,为实现点对点的推送,可以在消息中加上要发送的pc端的用户名,pc端对消息的用户名进行判断,如果和自己的一样则接收消息。

对于群发,大家都可以收到。

应用用户通过接口发送消息给消息中心,消息采用json格式,包含应用用户id、发送

消息方式id、Title、content、usrld,sendTime。

采用mqttQoSlevel2协议,保证自动重发发送不成功的消息,而且可以保证消息的顺序到达,可以设置超时时间,防止断网。

Mqtt不建立长连接,省电、

省流量。

还可以用mosquitto实现集群发送,集群可以线性扩展。

应用系统用户在注册、登陆后申请发送消息的类别,有邮件、短信、手机消息、pc消息4种,注册后要记住自己的id,然后通过接口发送消息;管理员审批用户的申请,管理消息;消息中心发送消息或邮件、短信到相应的pc端或手

机端用户。

系统的管理功能包括对规则、用户、消息进行管理。

中心的时区设当地的时区,系统用ntpdate命令让系统使用NTP(NetworkTimeProtocol网络时间协议)协议来从网络同步时间的命令,这样即使有夏令时的变化,系统也会自动更新。

中心使用时间时需要得到系统的时区。

2.网络架构

5.2系统包含模块

1.消息接收发送模块。

1)提供发送接口用于接收应用用户的消息和参数,然后通过规则发送消息,用户通

过接收接口得到发送结果:

发送消息到手机端。

发送消息到pc端。

发送邮件。

发送短信。

2.手机、pc接收模块。

手机接收消息中心发送的消息。

Pc接收消息中心发送的消息。

3.管理模块。

1)用户和管理员注册、登陆。

2)实现用户申请消息发送方式申请、查看消息、修改密码、统计消息。

用户可以申

请邮件、短信、手机消息、pc消息4种方式发送消息。

3)管理用户、审批用户发送方式、管理员密码修改、查看和统计发送过的消息。

4)管理规则,可以增加、修改、删除查询规则。

5.3用例图

1.应用用户用例图

A

 

 

2.管理员用例图

 

3消息用户用例图

4.应用用户用例图

 

5.4流程图

1.发送消息流程图

 

ml*

 

6系统模块的结构与功能

系统包括消息接收送接模块、手机、pc接收消息模块、管理模块,共3个模块。

6.1消息接收发送模块

提供接口用于接收应用用户的消息,然后用drools通过规则异步发送消息,用户调

用接收接口得到发送结果:

发送消息到手机端。

发送消息到pc端。

发送邮件。

发送短信。

系统采用rocketmq接收消息和返回消息发送结果给用户,系统给pc、手机采用

@Async异步发送邮件等消息,并得到发送结果,把结果返回给调用者,消息及发送的情况入库,入库时需要检查消息是否已经存在。

用户采用异步调用本接口,得到发送结果,如果不

成功,用户可以重发。

因为中心的时区与各用户的时区不同,用户需要发送自己的时区,系统返回发送时间时要根据时区转换时间。

当手机离线没有收到消息,则在定时器中重发;对于需要定时发送的消息,通过定时器完成发送。

定时器20分钟执行一次,对这2种情况通过规则发送消息。

系统确定时间时要根据时区进行转换,按照用户的时区时间来发送消息。

6.1.1单元定义

单元名称

单元功能描

备注

com.isoftstone.message.domain.Message

消息实体

com.isoftstone.message.MessageBiz

消息发送接

收业务类

com.isoftstone.message.dao.MessageDao

消息管理

dao类

com.isoftstone.message.service.MessageService

消息管理

service类

com.isoftstone.message.mailMessage

发送邮件

com.isoftstone.message.shortMessage

发送短信

com.isoftstone.message.pcMessage

发送pc消息

com.isoftstone.message.MobileMessage

发送手机消

6.1.2接口描述

1.发送接口

接口定义:

publicvoidsendMessage(Stringapplicationld,String

typeid,Stringtitle,Stringcontent,StringuserId)throwsException;

描述:

通过调用此接口可发送消息及参数,接口在com.isoftstone.message.MessageBiz中。

入口参数

丿元糸

丿元糸

必类型

备注

applicationld

M嘶

typeid

OString

title

String.

content

0String

userId

String

sendTime

String

timeZone

String

2.接收接口

接口定义:

publicIntegergetMessageResult(String

applicationld,Stringtypeid,Stringtitle,Stringcontent,StringuserId)

throwsException;

描述:

通过调用此接口可得到发送消息的结果,如果发送失败,用户则调用发送接

口重发。

接口在com.isoftstone.message.MessageBiz中。

入口参数

丿元糸

丿元糸

必类型

备注

applicationld

mString

typeid

OString

title

String.

userld

String

sendTime

String

timeZone

String

接口返回:

 

返回码

含义

备注

0

成功

1

失败

2

数据重复提交

3

服务器异常

4

没有发送权限

5

网络异常

时序图

基本场景

以下场景触发模块:

用户调用接口发送消息。

时序图及描述

流程描述:

1.用户使用接口发送消息及参数。

2.接口对消息参数进行分析,判断是否可以发送。

3.

pc消息,并得到发送结果,反馈给

接口根据参数分别异步发送邮件、短信、手机、接口调用者。

4.发送消息后保存消息到数据库。

异常描述

10异常:

数据插入失败,写入日志。

数据库操作异常:

数据插入失败,写入日志网络连接超时异常:

网络异常,发送失败,写入日志并反馈给用户。

6.2手机、pc接收模块

621手机接收消息中心发送的消息

手机用mqtt接收消息。

6.2.2Pc接收消息中心发送的消息。

Pc用winsocket接收消息。

6.3管理模块。

6.3.1用户和管理员注册、登陆。

用户和管理员注册、登陆。

应用用户注册后记住自己的id,以后发送消息时会用到。

6.3.2用户操作功能。

实现用户申请消息发送方式申请、查看消息、修改密码、统计消息。

用户可以申请邮件、

短信、手机消息、pc消息4种方式发送消息。

6.3.3管理功能。

管理规则、用户、审批用户发送方式、管理员密码修改、查看和统计发送过的消息。

规则以xml格式生成。

634注册、登陆界面

完成应用用户和注册、登陆。

用户售務'|

用户类型丫管谨员C)应用用户

enail:

注珊

电话:

注册放弃

635用户申请界面

实现用户申请消息发送方式申请。

用户可以申请邮件、短信、手机消息、pc消息4

种方式发送消息。

1.应用用户消息管理

"应用用户消息管理肖息管俚丫鞄码置理[~~~~]应用用户消息管理

n邮件

一疫信

□手机消息

n皿消原

保存畝弃

2•应用用户消息管理

底用馬户谓息冒僵][消凰誉迴丫整码置理]~

消息冒哩

应用用户名秫:

XX用户1

消圜d

消息类型

消息标题

消息内咨

搖收人

岌送日朝

1

11122

手机消息

超时

请尽快完曲任芳

5145U515

2015-4-5

2

111123

删件

加班通知

周耒加竝

6SS@

20134-5

集1慮其1更才心Q

3•应用用户密码管理

址用用户消息管理”消息置理]底码置理J"~~

蔭码宣理

旧霑码:

赣密码:

脸证新幣码:

4.发送管理

9印时三壬

 

5•应用用户消息统计

忆用馬户消握萱理][消凰管理][密码童迎I而

诸息管理

应用用户営耕:

XX用户1

序号

消息id

消息黄型

消息标題

消息内酱

接收人

发送曰期

1

11122

手机消皂

超时

请尽快兗咸任势

5145U515

20154-6

2

111123

由噜

加班趣矩

周未如班

556@126com

20134-5

第1

嵐共1

636管理界面

管理员实现对应用用户的管理、对应用用户申请的管理和对消息的管理,及管理员注册、登陆。

1.应用用户管理

应用用户营遲][&用用一"汹息管理]['消息管理”巒码管理][±^tf

应用用户官理

巒事仙2'刷祈

序号

应书用户容称

上檢人

車批

处理

1

)&用户1

20134^5

孚日

L不冋思

删除

2

XX用户2

2013-4-6

'冋忌*不冋忌

第1页点1頁/3

2.应用用户消息审批管理

而丽词陆用用户活息童理I[Ssm][亜码童豐][―囲—]

应=9用户皀爸理

应用用户茗曙二

由胡卧|宫胃|日

單」重吿

曙1丽―£|器御|J職新

两号

应冋用户容称

日期

上佟人

消息左式审犹

1

2013^-5

車自

引件⑥罔宜•不同意

2

袞用卢1

201皿

-

短恃a,1司葛平同意

3

XX用户1

201M-5

字m

丰机消息Q同意「不風鳶

*AHtJ・rf^u■計■^bi

2.消息管理

[应用用戸管迴]阻用用户湾息営理]何舅曽¥里]f裁胃音理]f

消尾苜15

刷祈

直匡阳户宕關

消JRid

肖息集型

JM标壘

接收人

岌箧口期

处理

1

XX用户1

11122

壬机“肖忌

514514515

?

0154-6

2

立护j

111123

tn娅鱼知

GE6@125com

舸13斗£

WT

.*1贞共1虫

dgQ

4..管理员密码管理

「应用用户管理H应用用户消息管連][消息管理]『密码管理||统计

5.消息统计

户宦運”虑黑用户消竄童遲]务JS管理]「密码曽理](面

鏡计

应用用户宮称F

亘询I垂置

別崙

序号

应用胃尸若称

应用用户

id

手机俏息

pc誚息

邮件

菽送口期

處功总数

不威

咸功率

1

XX用户1

11222

21(2>

22<3)

33⑷

333(E)

201645

22

3

2

 

1

瓦共1页

*>1

5.规则管理

6.规则编辑

iS:

U]

I惟m护Hciet

刮专半血Q

〒亡宾岂中〜邕世

□胡龍程D誣护艇亡腿解

7开发环境的配置

类别

标准配置

最低配置

计算机硬件

Pcwindos

软件

eclipse

网络通信

Tcp/ip

其它

8运行环境的配置

类别

标准配置

最低配置

计算机硬件

服务器

软件

Linux

网络通信

Tcp/ip

其它

9测试环境的配置

同开发环境

10其它

10.1数据库设计

10.1.1邮件消息表t_email_message

主要用途:

保存发送的邮件

数据增长频率:

数据保存周期:

由用户调用操作

FIELDNAME

FIELDCODE

FIELDYPE

FIELD

LENGTH

KEY

O/M

DEFAULT

VALUE

DESCRIPTION

id

id

bigint

pk

M

标题

title

varchar(

80)

M

内容

content

varchar(500)

M

发送时间

sendTime

datetim

e

M

接收时间

ReceiveTime

datetime

发送状态

status

tinyint

M

接收用户

id

receiveUserI

d

varchar(

50)

应用用户

id

applicationT

ypeld

bigint

是否删除

deleted

tinyint

10.1.2手机消息表t_mobile_message

主要用途:

保存发送的手机消息数据增长频率:

数据保存周期:

由用户调用操作

FIELDNAME

FIELDCODE

FIELDYPE

FIELD

LENGTH

KEY

O/M

DEFAULT

VALUE

DESCRIPTION

id

id

bigint

pk

M

标题

title

varchar(

80)

M

内容

content

varchar(500)

M

发送时间

sendTime

datetime

M

接收时间

ReceiveTime

datetime

发送状态

status

tinyint

M

接收用户

id

receiveUserI

d

varchar(

50)

应用用户

id

applicationT

ypeId

bigint

是否删除

deleted

tinyint

10.1.3短信消息表t_short_message

主要用途:

保存发送的短信消息。

数据增长频率:

数据保存周期:

由用户调用操作

FIELDNAME

FIELDCODE

FIELDYPE

FIELD

LENGTH

KEY

O/M

DEFAULT

VALUE

DESCRIPTION

id

id

bigint

pk

M

标题

title

varchar(

80)

M

内容

content

varchar(500)

M

发送时间

sendTime

datetim

e

M

发送状态

status

tinyint

M

接收时间

ReceiveTime

datetime

接收用户

id

receiveUserl

d

varchar(

50)

应用用户

id

applicationT

ypeId

bigint

是否删除

deleted

tinyint

10.1.4管理员表t_admin

主要用途:

保存管理员信息。

数据增长频率:

数据保存周期:

由用户注册、修改决定。

FIELDNAME

FIELDCODE

FIELDYPE

FIELD

LENGTH

KEY

O/M

DEFAULT

VALUE

DESCRIPTION

id

id

bigint

pk

M

姓名

name

varchar(

30)

M

email

email

varchar(128)

M

电话

telephone

varchar(

M

32)

密码

password

varchar(50)

M

注册时间

registerTime

datetim

e

是否删除

deleted

tinyint

10.1.5发送消息用户表t_application_user

主要用途:

保存发送消息用户信息。

数据增长频率:

数据保存周期:

由用户注册、修改决定。

FIELDNAME

FIELDCODE

FIELDYPE

FIELD

LENGTH

KEY

O/M

DEFAULT

VALUE

DESCRIPTION

id

id

bigint

pk

M

姓名

name

varchar(

30)

M

email

email

varchar(128)

M

电话

telephone

varchar(

32)

M

密码

passWord

varchar(50)

M

注册时间

registerTime

datetim

e

是否删除

deleted

tinyint

10.1.6消息订阅类别表t_message_subscribe_type

主要用途:

保存用户消息订阅方式信息。

数据增长频率:

数据保存周期:

由管理员操作决定。

FIELDNAME

FIELDCODE

FIELDYPE

FIELD

LENGTH

KEY

O/M

DEFAULT

VALUE

DESCRIPTION

id

id

bigint

pk

M

方式

name

varchar(

30)

M

邮件

备注

reamark

varchar(128)

M

是否删除

deleted

tinyint

10.1.7国家时区表t_timeZone

主要用途:

提供各个国家时区,为管理员指定中心的时区服务。

数据增长频率:

数据保存周期:

由管理员修改决定

FIELDNAME

FIELDCODE

FIELDYPE

FIELD

LENGTH

KEY

O/M

DEFAULT

VALUE

DESCRIPTION

id

id

bigint

pk

M

国家

country

varchar(80)

M

时区

timeZone

varchar(10

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 水产渔业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1