[发明专利]一种基于SOA大并发高性能工作流程服务器系统有效

专利信息
申请号: 201410489200.8 申请日: 2014-09-23
公开(公告)号: CN104267946A 公开(公告)日: 2015-01-07
发明(设计)人: 于晓义;詹卫许;易勇强;董灿;吴方权;陈彬;胡俊杨;陈晓洪;王勇 申请(专利权)人: 中国南方电网有限责任公司;云南云电同方科技有限公司
主分类号: G06F9/44 分类号: G06F9/44;G06F9/50
代理公司: 昆明大百科专利事务所 53106 代理人: 何健
地址: 510613 *** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 soa 并发 性能 工作 流程 服务器 系统
【说明书】:

技术领域

发明涉及面向服务架构(SOA)的大并发高性能工作流服务器技术,实现并行工作流程引擎,超大并发极限用户规模应用场景,并可以持续不停机的扩展服务器能力。

背景技术

企业级的工作流程服务系统,在高并发场景下,依赖于数据库的性能,这导致超大规模用户应用场景中,处理响应时间和等待周期都相当长。对于有对响应要求较高的企业应用业务场景,比如缴费,客户服务等,加快系统处理流程,减少排队时间,提高用户满意度至关重要。传统工作流系统和工作流引擎纯粹依赖软件优化,依赖于服务器硬件自身性能,扩展和提高非常有限。本发明充分利用并发技术,阵列多处理器,创新的技术来实现高性能和大并发工作流服务器,填补此项空白。

发明内容

传统服务器采用请求队列阻塞方式,多线程的处理请求,这样讲导致在多个任务切换的过程中,中处理器将从阻塞状态恢复到运行状态。这种切换虽然是纳秒级别的,当并发到10000个请求连接,也将使得操作系统在内核和用户态之间频繁切换,大大降低了处理器能够并发的上限响应能力。

本发明采用下列技术方案来实现。

一种基于SOA大并发高性能工作流程服务器系统,由服务请求组包和分发模块,工作流数据准备模块,工作流服务执行模块,工作流处理结果缓存模块组成,其连接关系为:服务请求组包和分发模块,工作流服务执行模块,工作流处理结果缓存模块依序连接,工作流处理结果缓存模块经过数据库与工作流数据准备模块连接,工作流数据准备模块与工作流服务执行模块相连;其中:

所述的服务请求组包和分发模块使用C语言在多个高速网络接口计算机或者路由器上编写,充分利用带宽和处理器缓存,容纳大量的请求,并使用非阻塞的组包处理方式,所有请求都在RAM中处理完毕;

工作流服务执行模块使用一个主处理的硬件CPU,配合多个核心的通用并行处理硬件组GPU,包括以下操作:

1)主处理器负责将已经就绪的流程依赖的数据对齐组装;

2)按照请求包的流程关系对应好并行处理器GPU;

3)控制GPU执行,多核心的并行可扩张GPU,保证执行速度高于数据库存储速度;

4)将返回结果整理插入到哈希表中。

数据对齐组装程序结构如下:

① 数据准备模块来的聚合数据,将根据GPU不同要求,进行对齐组装,以取得较高的GPU执行率,对齐操作根据操作系统和内存边界的要求进行,alignmentReadyBuffer函数完成对齐检查;

② 请求包的流程关系由缓存流程定义的workFlowDefHash中获得,并作为GPU执行kernel的参数传递;

③ GPU控制执行程序调用GPU,并将返回结果缓存到哈希表workFlowResultHash,以提供工作流处理结果缓存模块做数据缓存和持久化。

CPU部分的代码使用C编写,GPU并行处理部分的虚拟机代码使用OPENCL编写。

此模块程序结构和源代码摘要如下:

初始化GPU

#include CL/cl.h

#include <stdio.h>

#include <stdlib.h>

#include <malloc.h>

int InitOpenCL( const char *program_source,

                cl_uint* alignment,

                 const unsigned int map_size,

                 unsigned int vector_width,

                 const unsigned int gpu_algo,

                 const unsigned int platform_num,

                 const unsigned int dev_num);

int InitOpenCL(const char *program_source, cl_uint* alignment,

                 const unsigned int map_size,

                 const unsigned int gpu_algo,

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国南方电网有限责任公司;云南云电同方科技有限公司,未经中国南方电网有限责任公司;云南云电同方科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410489200.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top