消息中心及监控服务器设计方案

来源:互联网 发布:淘宝卖家如何发布链接 编辑:程序博客网 时间:2024/05/23 13:23

1          简介

1.1       目的

 

本文档的主要目的是描述Message Center System的功能和总体实现目标及方式。

由于网站与很多接口用于和其他的系统之间的通信。迫切需要有一个Message Center MSGC)规范开发和维护。

1.2       背景

      

1.3       概述

系统包括三大部分,Server端、Client端、管理监控服务。

1.4       范围

MSGC系统提供统一消息平台方案。包括Server端、Client端、管理监控服务。

2          系统总体结构

2.1.        系统结构

2.1.        系统说明

1MSGC Client

MSGC Client端将要发送的Message传送给MSGC ServerServer负责将其插入相应的队列,排队等待处理。

 2MSGC Server

系统所要实现的目标是可配置的、可管理的Massager Center

       系统包括一个Massage Center,可以加载多个Message Engine,每个Message Engine 有一个Queue,一个Customer Thread和一个Processor。其中QueueCustomer Thread,系统提供默认实现,Processor可以认为是Sender,用于处理消息。

       Heartbeat Thread 负责向 MSGC Manager & Monitor发送心跳信息。

 3MSGC Manager & Monitor Service

MSGC Manager & Monitor Service 负责监控MSGC Server的状态,在MSGC Server状态不正常的时候发送警告信息给管理员。管理员可以通过这个进程管理MSGC Server,例如加载一个Engine,启动、停止某个Engine等。通过MSGC Manager & Monitor Service 实现MSGC系统的热部署和管理。

2.2.        发送策略的实现

       MSGC系统和接入的其他系统(应用MSGC Client的系统)属于异步通信。Customer Thread实现发送策略。Customer Thread基本策略包括,每次循环发送多少条,每次循环后间隔多长时间。可考虑加入实时发送(异步)和定时发送。

2.3.        规范说明

              Message CenterServer)是整个系统的容器,保持系统级(JVM)单实例。

       MSGC Engine是容器类,QueueCustomer ThreadProcessor 保持容器级(Engine)单实例。

              Processor可考虑配置是否容器级单实例。

3          端口约定

端口可配置,有默认值

1、  Monitor Service 监听心跳端口:58128

2、  MSGC Server 心跳发送端口:58118

3、  Message Server – Client 之间传递Message的端口:

UDP:               Server:58138                Client:58148