首页> 中国专利> 一种基于云服务的消息队列流处理方法

一种基于云服务的消息队列流处理方法

摘要

本发明涉及一种基于云服务的消息队列流处理方法,主要包括:建立八个子系统结构,即门户子系统,终端接入子系统,内部版服务子系统,专业版服务子系统,大众版服务子系统,服务管理子系统,系统管理子系统,综合服务数据库子系统;建立消息队列构架作为系统核心。本发明有益效果为:可使基于消息队列的云推送作为一种服务,为最终用户开发平台或服务;具有一个开放的协议,定义用户和内容模型,它允许第三方编写双方可互操作的联邦服务器的实施和用户客户端;能够实现实时推送通知直接传递给大家,无论移动、台式机或媒体设备、可实现随时随地跨设备的推送,为开发商降低了成本和复杂性,同时为最终用户提供更大的便利和增值功能。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-02-10

    授权

    授权

  • 2013-08-28

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20130304

    实质审查的生效

  • 2013-05-22

    公开

    公开

说明书

技术领域

本发明涉及信息安全技术领域,尤其涉及一种基于云服务的消息队列流处 理方法。

背景技术

云服务带来的一个重大变革是从以设备为中心转向以信息为中心,设备包 括应用程序,而信息及人们在信息中的投资则是必须要长期保留。越来越多的 人们在其工作和生活中,依靠信息推送的方式来获取信息,这些信息通过推送 的方式实时的传递到用户的手机或台式机,因此就会出现一个问题:用户通常 会在不同的设备收到不同的信息,或者在不同的设备收到相同的信息;有没有 办法把这些推送信息都聚集在一个地方则是个问题。同时,推送应用程序开发 也日趋复杂,由于移动设备的范围日益扩大,开发人员必须编写和维护不同版 本的同一推送软件大集的Android智能手机、iPhone、iPad和现在的Windows 手机,以及其它智能手机及平板电脑设备。因此,针对以上方面,本发明对现 有技术进行创新。

发明内容

针对以上缺陷,本发明提供一种基于云服务的消息队列流处理方法,通过 该方法满足最终用户和安全从业人员、安全厂商所面临的挑战,使通知更轻松 地访问、组织和存储,而且对于开发人员也降低了成本和复杂性,开发人员可 以创建一个单一的,无处不在的通知服务,将通知传递到所有类型的设备,如 手机、平板电脑、台式机、笔记本电脑和智能电视。

为实现上述目的,本发明采用以下技术方案:

一种基于云服务的消息队列流处理方法,主要包括以下步骤:

(1)建立八个子系统结构,即作为内部版、专业版、大众版Web门户统一入 口的门户子系统,作为内部版、专业版、大众版平板或智能手机终端子系统的 终端接入子系统,作为综合服务平台面向中心领导、中心员工、管理员的子系 统的内部版服务子系统,作为综合服务平台面向8+2行业、政府机构、企业用 户子系统的专业版服务子系统,作为综合服务平台面向社会大众、信息安全人 才和机构的大众版服务子系统,负责面向三大类用户子系统的服务管理的服务 管理子系统,负责综合服务平台整个系统管理的系统管理子系统,用于存储综 合服务平台的推送数据、用户数据、服务数据等海量数据的综合服务数据库子 系统;其中的服务管理子系统与系统管理子系统与综合服务数据库子系统连接, 内部版服务子系统、专业版服务子系统、大众版服务子系统分别与终端接入子 系统连接;

(2)建立消息队列构架作为系统核心,其组件包括消息生产者、消息消费者、 消息队列服务,其中的消息生产者包括信息安全专业网站,安全专业人员、安 全合作厂商也可通过开发API调用、普通用户通过网页、智能终端发布安全信 息等方式成为生产者;其中的消息消费者实现多种消息消费者,包括门户网站、 SNS、平板电脑、智能手机等,消费者具有注册、订阅、自动接收推送信息等 功能;其中的消息队列服务提供基础消息队列服务,实现消息推送、订阅、过 滤功能;

(3)消息队列采用推模式,即客户端发送一条消息,消息队列服务器先把消 息存入待发布队列,消息队列后台服务处理待发布消息队列,每条消息从待发 布队列中取出,存储该消息内容本身,消息队列服务往所有关注者的队列中注 册一条该消息指针,所有关注者客户端实时获得该推送消息。

本发明所述的基于云服务的消息队列流处理方法的有益效果为:

(1)消息队列云服务平台可使基于消息队列的云推送作为一种服务,为最终 用户开发平台或服务;

(2)具有一个开放的协议,定义用户和内容模型,它允许第三方编写双方可 互操作的联邦服务器的实施和用户客户端;

(3)能够实现实时推送通知直接传递给大家,无论移动、台式机或媒体设备、 可实现随时随地跨设备的推送,这一创新解决方案为开发商降低了成本和复杂 性,同时为最终用户提供更大的便利和增值功能。

附图说明

下面根据附图对本发明作进一步详细说明。

图1是本发明实施例所述基于云服务的消息队列总体平台框架示意图;

图2是本发明实施例所述基于云服务的消息队列的推送流程示意图;

图3是本发明实施例所述基于云服务的消息队列流处理方法的具体实施逻 辑示意图。

具体实施方式

如图1-3所示,本发明实施例所述的基于云服务的消息队列流处理方法, 主要包括以下步骤:

(1)建立八个子系统结构,即作为内部版、专业版、大众版Web门户统一 入口的门户子系统,作为内部版、专业版、大众版平板或智能手机终端子系统 的终端接入子系统,作为综合服务平台面向中心领导、中心员工、管理员的子 系统的内部版服务子系统,作为综合服务平台面向8+2行业、政府机构、企业 用户子系统的专业版服务子系统,作为综合服务平台面向社会大众、信息安全 人才和机构的大众版服务子系统,负责面向三大类用户子系统的服务管理(主 要有服务订阅、服务推送、信息发布、邮件推送等功能)的服务管理子系统, 负责综合服务平台整个系统管理(主要有权限、用户管理、访问日志、审计等 功能)的系统管理子系统,用于存储综合服务平台的推送数据、用户数据、服 务数据等海量数据的综合服务数据库子系统;其中的服务管理子系统与系统管 理子系统与综合服务数据库子系统连接,内部版服务子系统、专业版服务子系 统、大众版服务子系统分别与终端接入子系统连接;

(2)建立消息队列构架作为系统核心,其组件包括消息生产者、消息消费者、 消息队列服务,其中的消息生产者包括信息安全专业网站,安全专业人员、安 全合作厂商也可以通过开发API调用、普通用户通过网页、智能终端发布安全 信息等方式成为生产者;其中的消息消费者实现了多种消息消费者,包括门户 网站、SNS、平板电脑、智能手机等,消费者具有注册、订阅、自动接收推送 信息等功能;其中的消息队列服务提供基础消息队列服务,实现消息推送、订 阅、过滤等功能;

系统整体技术构架:

1)客户端发送消息请求;

2)Redis Master存储该消息;

3)Redis数据库存储的同时,记录事务日志;

4)事务日志解析,作为消息的生产者,提供RabbitMQ Master;

5)消息队列RabbitMQ Master复制到多个Rabbit Slave;

6)消息队列RabbitMQ的Consummer有MySQL、Memory cached、Redis;

7)MySQL提供各种综合查询;

8)Memory Cached提供终端各种快速缓存;

9)Redis提供实时推送功能;

(3)消息发布流程:消息队列采用推模式,即客户端发送一条消息,消息队 列服务器先把消息存入待发布队列,消息队列后台服务处理待发布消息队列, 每条消息从待发布队列中取出,存储该消息内容本身,消息队列服务往所有关 注者的队列中注册一条该消息指针,所有关注者客户端实时获得该推送消息。

消息推送流程:本推送流程实现了多台设备-共享的管理:认识到这项新服 务的用户有多个设备:台式机、手机、平板电脑,允许用户在所有他们的设备 共享和管理他们的通知。

面向普通用户

实时的网络-一个粘性的做法:使得它可以为最终用户接收,实时, 所有的信息,数据,内容,更新和提醒他们真正想要的,只要它是在网络上。

基于服务的通知-一个易于使用的环境:通知系统最终用户的使用是 非常简单的,订阅到一个新的内容或服务提供商的通知很简单,在网站上点击 一个链接。

侵扰程度较低的通知-一个统一的收件箱:通知服务提供了一个独特 的中央收件箱应用程序在一个安全的中央存储库,收集和储存的所有通知。

多台设备-共享的管理:认识到这项新服务的用户有多个设备:台式 机,手机,平板电脑甚至是一个全新的网络连接的电视机。允许用户在所有他 们的设备共享和管理他们的通知。

中央调度员-一个有组织的和语境:使用本系统,用户可以分组通知 时间,地域和来源等,这使得更容易找到和组织信息的一个合乎逻辑的方式。

保持记录-保存消息和搜索选项:大多数的消息可以提供稍后阅读功 能,搜索选项也可以保存供以后使用。

面向安全开发人员

开发一次,到处推送-一个面向Web的通知系统,开发者再也不用为 每一个可能的用户设备开发不同的服务器端和客户端软件。相反,他们现在可 以实现一个统一策略推送来通知。

目标用户,而不是一个设备-最终用户关注的焦点:在设计上,现有 的推送通知系统目标的应用程序特定的设备或平台。现在,这些系统能够满足 最终用户无论在什么样的设备,他们有多少设备。因此,企业可以专注于为客 户提供最佳的用户体验。

公共或私人数据-信道的使用:建立一个基于”云服务”的通知系统 并不意味着的用户接受公众的内容是有限的。开发人员可以创建通知系统,提 供特定的最终用户的信息,比如一组人共享相同的兴趣,或者一个团队的员工。

集成到现有的系统-一个简单的开发部署的推送通知服务需要几分钟 的时间。开发人员只需添加新的链接和一个非常简单的代码插入到网站或Web 应用程序。

面向信息安全内容提供商和信息安全企业

本平台是一个真正的创新的解决方案,这将有利于更多的实时通知系统的 发展和加速的推送服务的最终用户。

该解决方案是:

开放:通过提供消息队列”云服务”作为一个开放的技术和共享,旨 在进一步与信息安全厂商发展的一个标准的“推送”生态系统。

完全联合:允许双向通信,实现真正的互操作性在不同的通知平台。

云消息作为一种服务:提供云计算作为一种服务。

以上本发明实施例所述的基于云服务的消息队列流处理方法,消息队列开 放API实现如下功能:

建立MQS连接

SQS sqs=new SQSClient(new BasicMQSCredentials(MQS_KEY, MQS_SECRET));

在MQSAPI中,对createQueue的调用,不一定每次创建一个新队列。 如果队列已经存在,返回其句柄。在SQS中,队列仅仅是URLs;因此,队 列处理也只是一个URL。注意在MQS SDKAPI中,Queue URL是一个String 类型,而不是Java URL类型。

创建一个队列

String url=sqs.createQueue(new CreateQueueRequest(″a_queue″)).getQueueUrl();

有了队列之后,可以向其写入一条消息。

通过SQS发送消息

sqs.sendMessage(new SendMessageRequest(url,″BrowserCRM多个SQL注 入漏洞″));

通过SQS检索消息

将消息放到SQS上的一个saveLocation方法

以上实施例是本发明较优选具体实施方式的一种,本领域技术人员在本技 术方案范围内进行的通常变化和替换应包含在本发明的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号