一种基于服务的消息接入层框架及其实现方法

文档序号:7803345阅读:211来源:国知局
一种基于服务的消息接入层框架及其实现方法
【专利摘要】本发明涉及软件【技术领域】,特别是一种基于服务的消息接入层框架及其实现方法。本发明系统启动后,控制器解析配置文件、启动数据库访问服务并初始化、启动各个组件;应用前端发送请求以后,接收器负责接收前端的请求并转换成一致格式的数据向后面的处理模块输送;账号口令检查器和会话处理器是框架主体的消息处理模块,负责对客户请求进行各种处理,处理结束后交给转发器。转发器负责把处理后的具有一致格式的数据转换为应用后端接受的数据格式,然后发送给应用后端,进行云端的数据处理。本发明解决了云计算应用前端到后端接入的安全、访问速度及技术开发工作量大等问题;可应用于前端到后端的接入服务。
【专利说明】—种基于服务的消息接入层框架及其实现方法

【技术领域】
[0001]本发明涉及软件【技术领域】,特别是一种基于服务的消息接入层框架及其实现方法。

【背景技术】
[0002]随着云计算应用规模的不断扩大,针对不同类型的用户,需要把不同类型的前端接入到后端。前端根据不同的需要,会采用不同的协议进行通信;常用的Http协议,针对移动设备通信的经过压缩的Http协议,各种在线视频通信协议,传统的SOAP协议及RPC协议,甚至是专门定制的通信协议。所有的前端连接到后端时都需要进行登录管理、权限管理、行为审计的处理。可以把这些处理统称为接入层。目前,云计算应用都需要独立开发自己的接入层,这种做法有如下的缺点:
[0003]1、每个前端都独立连接后端,无法平衡各个前端的访问频度,某个前端的偶发性的高访问量会给后端带来过大的压力,影响其他前端的访问速度。
[0004]2、每个前端需要进行独立的账号认证,都连接到相同的认证数据库,对数据库造成较大的安全威胁。
[0005]3、每个前端都开发接入层,大部分都是重复性的工作,加大开发人员的工作量。


【发明内容】

[0006]本发明解决的技术问题之一在于提供一种基于服务的消息接入层框架解决目前应用前端协议不同,安全性低,开发工作量大的问题。
[0007]本发明解决的技术问题之二在于提供一种基于服务的消息接入层框架的实现方法,解决目前应用前端协议不同,安全性低,开发工作量大的问题。
[0008]本发明解决上述技术问题之一的技术方案是:
[0009]所述框架由控制器、接收器、账号口令检查器、回话处理器和转发器五个组件构成;其中,
[0010]所述的控制器,包括配置文件解析器和数据库访问服务;用于启动、初始化各个组件,协调各个组件的工作;
[0011]所述的接收器,用于以各种形式接收应用前端的请求;接收到不同格式的数据后,将其转换成一致格式的数据向后面的会话处理器输送;
[0012]所述的账号口令检查器,用于对前端的请求进行的访问控制验证。处理结束后交给转发器;
[0013]所述的会话处理器,作为整个框架的主体处理模块,用于对请求进行登录管理、权限管理、行为审计、日志、单点登录、公开接口等各种处理;
[0014]所述的转发器,用于将处理后的具有一致格式的数据转换为后端接受的数据格式,然后发送给后端,进行云端的处理。
[0015]所述的应用前端的请求来自web前端或自一个自定义应用层协议的客户端。
[0016]本发明解决上述技术问题之二的技术方案是:
[0017]包括步骤:
[0018]步骤1:系统启动后,控制器解析配置文件、启动数据库访问服务并初始化、启动框架的各个组件;
[0019]步骤2:应用前端发送请求以后,接收器负责接收前端的请求并转换成一致格式的数据向后面的会话处理器输送;
[0020]步骤3:账号口令检查器和会话处理器作为框架主体的消息处理模块,负责对客户请求进行各种处理,处理结束后交给转发器;
[0021]步骤4:转发器负责将处理后的具有一致格式的数据转换为应用后端接受的数据格式,然后发送给应用后端,进行云端的数据处理。
[0022]所述控制器的工作流程如下:
[0023]首先读入配置文件并解析,根据配置文件启动接收器,不同的接收器和不同的应用前端有关,取决于前端使用的通信协议;
[0024]然后启动转发器;不同的转发器和不同的后端有关,取决于后端用什么通信方式;
[0025]然后启动数据库访问服务,并使用其提供的连接启动账号口令检查器,从数据库中获取账号的验证信息;
[0026]最后启动一个初始没有会话的会话处理器;
[0027]所述控制器的处理逻辑如下:
[0028]由配置文件指定的策略决定请求经过哪些模块的处理,如何处理;如果处理出现问题,处理链终止,提前返回给控制器;控制器根据返回的异常信息,提前通过接收器返回响应给客户请求,完成一次请求响应。
[0029]所述接收器作为一个服务端不断轮询接受应用前端的请求,接收后,给每个请求赋予一个唯一的ID。
[0030]所述会话处理器中包含来自不同应用前端的连接信息,称之为会话;
[0031]每个会话以唯一的标识sess1nld来区分,每个应用前端首次连接到接入层框架并通过账号口令检查器的检查后,都会被分配一个sess1nld,此前端后续所有的连接都必须将sess1nld包含在请求中。
[0032]请求处理的完整流程如下:
[0033]会话处理器在每个请求中提取会话ID,并检查会话ID是否已经存在;
[0034]如果存在说明会话已经存在,往转发器传送;
[0035]如果不存在说明是个新会话,先交由账号口令检查器进行认证;
[0036]如果认证不通过,不往下传送,直接返回错误码到应用前端;
[0037]如果认证通过,进行会话登记,向应用前端返回成功认证信息;
[0038]在发送响应信息后,接收器会销毁对应的一些连接信息,接收器就只负责接收和返回请求,每个请求相互独立,请求处理完毕即清除相关信息,继续等待下一个请求。
[0039]本发明方案的有益效果如下:
[0040]1、能平衡不同应用前端之间的负载,减轻后端的压力;
[0041]2、作为各个应用的一个惟一的访问入口,可以提高安全性,集中管理和接入相关的工作,隔离前台和后台,同时使得前台和后台的程序的逻辑更简单纯粹;
[0042]3、实现成框架可以实现代码重用,减少开发接入层的工作量。

【专利附图】

【附图说明】
[0043]下面结合附图对本发明进一步说明:
[0044]图1为本发明方法流程图。

【具体实施方式】
[0045]系统启动后,控制器调用配置文件加载初始化信息,本发明使用xml文件描述初始化信息:
[0046]

【权利要求】
1.一种基于服务的消息接入层框架,其特征在于:所述框架由控制器、接收器、账号口令检查器、回话处理器和转发器五个组件构成;其中, 所述的控制器,包括配置文件解析器和数据库访问服务;用于启动、初始化各个组件,协调各个组件的工作; 所述的接收器,用于以各种形式接收应用前端的请求;接收到不同格式的数据后,将其转换成一致格式的数据向后面的会话处理器输送; 所述的账号口令检查器,用于对前端的请求进行的访问控制验证,处理结束后交给转发器; 所述的会话处理器,作为整个框架的主体处理模块,用于对请求进行登录管理、权限管理、行为审计、日志、单点登录、公开接口等各种处理; 所述的转发器,用于将处理后的具有一致格式的数据转换为后端接受的数据格式,然后发送给后端,进行云端的处理。
2.根据权利要求1所述的消息接入层框架,其特征在于:所述的应用前端的请求来自web前端或自一个自定义应用层协议的客户端。
3.一种基于服务的消息接入层框架实现方法,其特征在于:包括步骤: 步骤1:系统启动后,控制器解析配置文件、启动数据库访问服务并初始化、启动框架的各个组件; 步骤2:应用前端发送请求以后,接收器负责接收前端的请求并转换成一致格式的数据向后面的会话处理器输送; 步骤3:账号口令检查器和会话处理器作为框架主体的消息处理模块,负责对客户请求进行各种处理,处理结束后交给转发器; 步骤4:转发器负责将处理后的具有一致格式的数据转换为应用后端接受的数据格式,然后发送给应用后端,进行云端的数据处理。
4.根据权利要求3所述的方法,其特征在于:所述控制器的工作流程如下: 首先读入配置文件并解析,根据配置文件启动接收器,不同的接收器和不同的应用前端有关,取决于前端使用的通信协议; 然后启动转发器;不同的转发器和不同的后端有关,取决于后端用什么通信方式; 然后启动数据库访问服务,并使用其提供的连接启动账号口令检查器,从数据库中获取账号的验证信息; 最后启动一个初始没有会话的会话处理器; 所述控制器的处理逻辑如下: 由配置文件指定的策略决定请求经过哪些模块的处理,如何处理;如果处理出现问题,处理链终止,提前返回给控制器;控制器根据返回的异常信息,提前通过接收器返回响应给客户请求,完成一次请求响应。
5.根据权利要求3所述的方法,其特征在于:所述接收器作为一个服务端不断轮询接受应用前端的请求,接收后,给每个请求赋予一个唯一的ID。
6.根据权利要求4所述的方法,其特征在于:所述接收器作为一个服务端不断轮询接受应用前端的请求,接收后,给每个请求赋予一个唯一的ID。
7.根据权利要求3至6任一项所述的方法,其特征在于:所述会话处理器中包含来自不同应用前端的连接信息,称之为会话; 每个会话以唯一的标识sess1nld来区分,每个应用前端首次连接到接入层框架并通过账号口令检查器的检查后,都会被分配一个sess1nld,此前端后续所有的连接都必须将sess1nld包含在请求中。
8.根据权利要求3至6任一项所述的方法,其特征在于:请求处理的完整流程如下: 会话处理器在每个请求中提取会话ID,并检查会话ID是否已经存在; 如果存在说明会话已经存在,往转发器传送; 如果不存在说明是个新会话,先交由账号口令检查器进行认证; 如果认证不通过,不往下传送,直接返回错误码到应用前端; 如果认证通过,进行会话登记,向应用前端返回成功认证信息; 在发送响应信息后,接收器会销毁对应的一些连接信息,接收器就只负责接收和返回请求,每个请求相互独立,请求处理完毕即清除相关信息,继续等待下一个请求。
9.根据权利要求7所述的方法,其特征在于:请求处理的完整流程如下: 会话处理器在每个请求中提取会话ID,并检查会话ID是否已经存在; 如果存在说明会话已经存在,往转发器传送; 如果不存在说明是个新会话,先交由账号口令检查器进行认证; 如果认证不通过,不往下传送,直接返回错误码到应用前端; 如果认证通过,进行会话登记,向应用前端返回成功认证信息; 在发送响应信息后,接收器会销毁对应的一些连接信息,接收器就只负责接收和返回请求,每个请求相互独立,请求处理完毕即清除相关信息,继续等待下一个请求。
【文档编号】H04L29/08GK104079624SQ201410195515
【公开日】2014年10月1日 申请日期:2014年5月9日 优先权日:2014年5月9日
【发明者】莫展鹏, 杨松, 季统凯 申请人:国云科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1