一种支持数据分区的服务连接方法及系统的制作方法

文档序号:9436130阅读:333来源:国知局
一种支持数据分区的服务连接方法及系统的制作方法
【技术领域】
[0001] 本发明涉及软件中间件技术领域,特别涉及一种支持数据分区的服务连接方法及 系统。
【背景技术】
[0002] 电信运营商的业务支撑系统中,普遍使用了传统的软件中间件系统,该系统是为 集中提供服务并运行于可靠的小型机平台而设计的。随着计算机软硬件技术的发展,使用 基于X86PC级硬件以及Linux软件系统也可能提供同样甚至更高运算能力的服务,并为能 提供平滑扩展计算能力做好准备。
[0003] 同时由于电信运营商的业务逻辑庞大繁杂且变更频繁,基于这些业务逻辑的代码 也因此非常繁多,这为业务向更新的技术平台移植造成了困难。
[0004] 为兼顾"平滑扩展计算能力"和"避免大规模移植代码"两点要求,我们尝试基于 传统中间件软件平台搭建可平滑增删节点的中间件集群。由于X86PC级硬件的单点可靠性 较小型机系统要低,要解决的关键问题是在节点失效时能使使用集群服务的外部系统尽量 不受影响。为能是集群节点能相互替代并负载分担,要求各节点能部署完全一致,但现有的 系统中仍然使用传统的数据库,并且业务数据水平切分到多个数据库实例中(数据分区)。
[0005] 现有系统中中间件层对于数据分区的支持,是为每个分区分配固定的中间件实 例,即一个中间件实例只固定访问其中一个分区数据库。

【发明内容】

[0006] 本发明所要解决的技术问题是提供一种能使一个中间件实例访问任一分区数据 库的支持数据分区的服务连接方法及系统。
[0007] 本发明解决上述技术问题的技术方案如下:一种支持数据分区的服务连接方法, 包括以下步骤:
[0008] 前台展示层向任一服务分发层发送服务请求;
[0009] 服务分发层根据服务请求计算请求访问的分区的分区代码,把分区代码加入请求 参数中,将请求参数根据负载均衡策略转发给中间件层;
[0010] 中间件层根据请求参数中的分区代码连接分区代码指定的分区数据库;
[0011] 分区数据库执行其内部的业务代码,并返回执行结果给前台展示层。
[0012] 本发明的有益效果是:本发明实现了集群节点可以相互替换,以及进行负载均衡 分发请求;集群中可以在线删除或增加节点,对于计算能力的平滑扩展提供支持;为电信 运营商业务支撑系统向低成本建设过渡提供支持。
[0013] 在上述技术方案的基础上,本发明还可以做如下改进。
[0014] 进一步,所述中间件层根据请求参数中的分区代码连接分区代码指定的分区数据 库具体为:
[0015] 解析请求参数,得到请求访问的分区的分区代码;
[0016]从预设的中间件服务配置文件中获取与服务请求对应的数据库标签及数据库连 接参数,根据数据库标签、数据库连接参数和分区代码建立对应分区的数据库连接。
[0017] 进一步,所述中间件层根据请求参数中的分区代码连接分区代码指定的分区数据 库中还包括:中间件层调用分区数据库中与请求参数对应的业务模块,并向业务模块中传 入请求参数及数据库连接参数。
[0018] 进一步,所述中间件层根据请求参数中的分区代码连接分区代码指定的分区数据 库中还包括:所述中间件层将分区数据库返回的执行结果进行封装。
[0019] 进一步,所述解析请求参数,得到请求访问的分区的分区代码进一步为:如果请求 参数中包含分区代码,则使用该包含的分区代码;否则,从预设的中间件服务配置文件中获 取默认的分区代码。
[0020] 进一步,一种支持数据分区的服务连接系统,包括发送模块、计算模块、连接模块 和执行模块;
[0021] 所述发送模块,用于使前台展示层向任一服务分发层发送服务请求;
[0022] 所述计算模块,用于使服务分发层根据服务请求计算请求访问的分区的分区代 码,把分区代码加入请求参数中,将请求参数根据负载均衡策略转发给中间件层;
[0023] 所述连接模块,用于使中间件层根据请求参数中的分区代码连接分区代码指定的 分区数据库;
[0024] 所述执行模块,用于分区数据库执行其内部的业务代码,并返回执行结果给前台 展示层。
[0025] 进一步,所述连接模块包括解析模块和获取建立模块;
[0026] 所述解析模块,用于解析请求参数,得到请求访问的分区的分区代码;
[0027] 所述获取建立模块,用于从预设的中间件服务配置文件中获取与服务请求对应的 数据库标签及数据库连接参数,根据数据库标签、数据库连接参数和分区代码建立对应分 区的数据库连接。
[0028] 进一步,所述连接模块还包括:调用模块,用于使中间件层调用分区数据库中与请 求参数对应的业务模块,并向业务模块中传入请求参数及数据库连接参数。
[0029] 进一步,所述连接模块还包括:封装模块,用于使所述中间件层将分区数据库返回 的执行结果进行封装。
[0030] 进一步,所述解析模块进一步用于:如果请求参数中包含分区代码,则使用该包含 的分区代码;否则,从预设的中间件服务配置文件中获取默认的分区代码。
【附图说明】
[0031] 图1为本发明方法步骤流程图;
[0032] 图2为本发明系统结构图。
[0033] 附图中,各标号所代表的部件列表如下:
[0034] 1、计算模块,2、连接模块,3、执行模块,3-1、解析模块,3-2、获取建立模块,3-3、调 用模块,3-4、封装模块,4、执行模块。
【具体实施方式】
[0035] 以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并 非用于限定本发明的范围。
[0036] 实施例1
[0037] 如图1所示,一种支持数据分区的服务连接方法,包括以下步骤:
[0038] 前台展示层向任一服务分发层发送服务请求;
[0039] 服务分发层根据服务请求计算请求访问的分区的分区代码,把分区代码加入请求 参数中,将请求参数根据负载均衡策略转发给中间件层;
[0040] 中间件层根据请求参数中的分区代码连接分区代码指定的分区数据库;
[0041] 分区数据库执行其内部的业务代码,并返回执行结果给前台展示层。
[0042] 所述中间件层根据请求参数中的分区代码连接分区代码指定的分区数据库具体 为:
[0043] 解析请求参数,得到请求访问的分区的分区代码;
[0044] 从预设的中间件服务配置文件中获取与服务请求对应的数据库标签及数据库连 接参数,根据数据库标签、数据库连接参数和分区代码建立对应分区的数据库连接。
[0045] 所述中间件层根据请求参数中的分区代码连接分区代码指定的分区数据库中还 包括:中间件层调用分区数据库中与请求参数对应的业务模块,并向业务模块中传入请求 参数及数据库连接参数。
[0046] 所述中间件层根据请求参数中的分区代码连接分区代码指定的分区数据库中还 包括:所述中间件层将分区数据库返回的执行结果进行封装。
[0047] 所述解析请求参数,得到请求访问的分区的分区代码进一步为:如果请求参数中 包含分区代码,则使用该包含的分区代码;否则,从预设的中间件服务配置文件中获取默认 的分区代码。
[0048] 如图2所示,一种支持数据分区的服务连接系统,包括发送模块1、计算模块2、连 接模块3和执行模块4;
[0049] 所述发送模块1,用于使前台展示层向任一服务分发层发送服务请求;
[0050] 所述计算模块2,用于使服务分发层根据服务请求计算请求访问的分区的分区代 码,把分区代码加入请求参数中,将请求参数根据负载均衡策略转发给中间件层;
[0051] 所述连接模块3,用于使中间件层根据请求参数中的分区代码连接分区代码指定 的分区数据库;
[0052] 所述执行模块4,用于分区数据库执行其内部的业务代码,并返回执
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1