金融系统的开发方法及系统技术方案

技术编号:15690598 阅读:73 留言:0更新日期:2017-06-24 03:07
本发明专利技术适用于金融技术领域,提供了金融系统的开发方法及系统,包括:创建金融系统的业务逻辑,并创建用于支持所述业务逻辑运行的系统工作单元;接收客户端发送的业务请求;将所述业务请求发送到代理队列中;按照公平队列方式将所述业务请求分发到一个以上的所述工作单元中;调用业务逻辑,使所述业务逻辑运行在所述工作单元中,并对所述业务请求进行处理,生成处理结果;将所述处理结果发送给客户端。本发明专利技术使得开发人员只需要开发应用层的业务逻辑,而不需要关注底层细节,因而降低了开发和维护金融交易系统的难度,并且提高了开发效率。

Method and system for developing a financial system

The invention is applicable to the technical field of finance, and provides a system development method of the financial system include: business logic to create the financial system, and create a system for work units to support the business logic operation; receiving client's service request; the service request is sent to the agent in the queue; according to the fair queuing the service request to the unit of work in more than one call; the business logic, the business logic operation in the work unit, and the service request processing, generating and processing results; the processing result is sent to the client. The invention only needs to develop the business logic of the application layer without paying attention to the bottom details, thereby reducing the difficulty of developing and maintaining the financial transaction system, and improving the development efficiency.

【技术实现步骤摘要】
金融系统的开发方法及系统
本专利技术属于金融
,尤其涉及金融系统的开发方法及系统。
技术介绍
各种金融类的交易需要开发商提供强大的后台计算系统,以处理众多金融交易所产生的海量数据。目前,金融市场出现了一些在分布式环境下解决大型复杂金融问题的集群化应用平台,这些大型金融系统,不仅需要处理实际的金融领域问题,还要为这些处理金融问题的程序提供辅助功能以及底层支持。然而,现有的业务逻辑只能基于C++开发,C++语法复杂,开发效率低,对开发人员的要求很高。同时,开发出来的业务逻辑模块移植性较差,需要针对不同的平台、不同的编译器进行专门性的开发、测试、部署,因此,现有的金融系统开发人员在开发金融业务应用时,还需要关注底层系统,浪费了开发人员的时间成本以及加大了开发和维护的难度。
技术实现思路
有鉴于此,本专利技术实施例提供了金融系统的开发方法及系统,以解决现有的金融交易系统在开发时调试困难以及业务逻辑移植性较差的问题。第一方面,创建金融系统的业务逻辑,并创建用于支持所述业务逻辑运行的系统工作单元;接收客户端发送的业务请求;将所述业务请求发送到代理队列中;按照公平队列方式将所述业务请求分发到一个以上的所述工作单元中;调用业务逻辑,使所述业务逻辑运行在所述工作单元中,并对所述业务请求进行处理,生成处理结果;将所述处理结果发送给客户端。第二方面,提供了一种金融系统的开发系统,包括:创建模块,用于创建金融系统的业务逻辑,并创建用于支持所述业务逻辑运行的系统工作单元;第一接收模块,用于接收客户端发送的业务请求;转发模块,用于将所述业务请求发送到代理队列中;代理队列模块,用于按照公平队列方式将所述业务请求分发到一个以上的所述工作单元中;处理模块,用于调用业务逻辑,使所述业务逻辑运行在所述工作单元中,并对所述业务请求进行处理,生成处理结果;发送模块,用于将所述处理结果发送给客户端。在本专利技术实施例中,通过创建金融系统的业务逻辑以及用于支持业务逻辑运行的工作单元;接收客户端发送的业务请求;将业务请求发送到代理队列中;按照公平队列方式将业务请求分发到一个以上的工作单元中;调用业务逻辑,使业务逻辑运行在工作单元中,并对业务请求进行处理,生成处理结果;将处理结果发送给客户端,使得开发人员只需要开发应用层的业务逻辑,而不需要关注底层细节。本专利技术实施例的有益效果是降低了开发和维护金融交易系统的难度,且提高了开发效率。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例一提供的金融系统的开发方法的实现流程图;图2是本专利技术实施例一提供的金融系统的层次结构图;图3是本专利技术实施例一提供的金融系统的逻辑结构图;图4是本专利技术实施例一提供的金融系统的开发方法S101的具体实现流程图;图5是本专利技术实施例一提供的金融系统的开发方法S105的具体实现流程图;图6是本专利技术实施例二提供的金融系统的开发方法的实现流程图;图7是本专利技术实施例三提供的金融系统的开发方法的实现流程图;图8是本专利技术实施例四提供的金融系统的开发方法的实现流程图;图9是本专利技术实施例五提供的金融系统的开发系统结构框图。具体实施方式以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本专利技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本专利技术。在其它情况中,省略对众所周知的系统、系统、电路以及方法的详细说明,以免不必要的细节妨碍本专利技术的描述。建立工作单元以及业务逻辑;接收客户端发送的业务请求;将业务请求发送到代理队列中;按照公平队列方式将业务请求分发到一个以上的工作单元中;调用业务逻辑,使业务逻辑运行在工作单元中,并对业务请求进行处理,生成处理结果;将处理结果发送给客户端。实施例一:图1示出了本专利技术实施例一提供的金融系统的开发方法的实现流程,详述如下:在S101中,创建金融系统的业务逻辑,并创建用于支持业务逻辑运行的工作单元;接收客户端发送的业务请求。为了更好的解决金融领域需要处理海量交易数据的问题,本专利技术实施例开发出了一个金融交易系统,为分布式环境下解决大型复杂的集群化应用提供灵活和易用的平台。本系统最主要的两个概念,一个是工作单元,另一个是业务逻辑。业务逻辑是开发人员为实现某些金融交易功能开发的应用程序,开发人员可以使用一些API函数(应用程序编程接口函数)调用一些已存在的业务逻辑来实现业务功能。也可以自己编写一些可装载的业务逻辑模块来实现业务功能。这里提到的可装载的业务逻辑模块是用户编写的,可以在不中断系统运行的情况下动态加载或卸载业务逻辑模块。工作单元封装了属于网络层、数据库等一些底层的功能,为业务逻辑提供了运行环境、系统资源和调用接口。这样金融业务的开发者可以把精力放在业务逻辑的开发上,而不需要关心网络和数据处理等系统功能细节。业务逻辑和工作单元开发完成以后,可以像搭积木一样,通过配置文件任意组合不同的业务逻辑以及工作单元,从而实现不同的业务需求。图2示出了本专利技术实施例一提供的金融系统的层次结构图。图中的IB-kernel是整个系统的最底层,用于支撑整个系统的运行,这一层不是本专利技术实施例的创新点,因此其运行方式和原理不在此详述。图中的IB-Engine分为若干个中间引擎如队列引擎、数据库引擎、内存数据库引擎以及日志引擎等,上文提到的工作单元就属于这一层,也就是工作单元运行在IB-kernel层之上。值得注意的是整个系统有多个工作单元,每个工作单元支持的应用程序可能存在不同,每个工作单元自身的系统程序以及封装的接口也可能存在不同。图中的脚本引擎,可以为业务逻辑提供执行环境。图中的业务脚本即上文提到的业务逻辑,用于处理具体的金融交易问题。图3示出了本专利技术实施例一提供的金融系统的逻辑结构图。本金融系统支持在Linux及Windows上运行。本专利技术实施例的交易平台,都是以一个个工作单元的形式存在,每个工作单元是一个独立的线程,每个工作单元上有多个业务逻辑来执行任务,每个业务逻辑都是由事件驱动的。每个工作单元有一个Listener端点和若干个Connector端点。Listener用于接收客户端的请求,并根据请求的业务逻辑名把请求分派到内部的工作单元上。每个工作单元可以通过Connector连接到其他工作上,业务逻辑可以通过Connector请求其他工作单元上的业务逻辑。图4示出了本专利技术实施例一提供的金融系统的开发方法S101的具体实现流程。详述如下:在S401中,读取配置文件。在本专利技术实施例中,配置文件是YAML格式的配置文件。YAML(另一种标记语言)是一种直观的能够被计算机识别的数据序列化格式,它的可读性强,容易被人阅读且容易和脚本语言交互,常用来表达资料序列。在本专利技术实施例中,在系统启动时,读取YAML格式的配置文件。在S402中,根据配置文件创建工作单元。在本专利技术实施例中,系统启动时,会首先读取当前目录下ison.yaml配置文件,根据配置文件的内容创建工作单元。配置文件格式如下:在S403本文档来自技高网...
金融系统的开发方法及系统

【技术保护点】
一种金融系统的开发方法,其特征在于,包括:创建金融系统的业务逻辑,并创建用于支持所述业务逻辑运行的工作单元;接收客户端发送的业务请求;将所述业务请求发送到代理队列中;按照公平队列方式将所述业务请求分发到一个以上的所述工作单元中;调用业务逻辑,使所述业务逻辑运行在所述工作单元中,并对所述业务请求进行处理,生成处理结果;将所述处理结果发送给客户端。

【技术特征摘要】
1.一种金融系统的开发方法,其特征在于,包括:创建金融系统的业务逻辑,并创建用于支持所述业务逻辑运行的工作单元;接收客户端发送的业务请求;将所述业务请求发送到代理队列中;按照公平队列方式将所述业务请求分发到一个以上的所述工作单元中;调用业务逻辑,使所述业务逻辑运行在所述工作单元中,并对所述业务请求进行处理,生成处理结果;将所述处理结果发送给客户端。2.如权利要求1所述的方法,其特征在于,所述创建金融系统的业务逻辑,并创建用于支持所述业务逻辑运行的系统工作单元包括:读取配置文件;根据配置文件创建工作单元;根据配置文件创建业务逻辑,所述创建业务逻辑包括:创建Javascript或C++脚本文件。3.如权利要求1所述的方法,其特征在于,所述调用业务逻辑,使所述业务逻辑运行在所述工作单元中,并对所述业务请求进行处理,生成处理结果包括:获取所述业务请求;根据业务请求中包含的业务逻辑名,调用业务逻辑,使所述业务逻辑运行在所述工作单元中;组合所述业务逻辑,生成完整业务执行逻辑;通过所述完整业务执行逻辑,处理所述业务请求,生成处理结果。4.如权利要求3所述的方法,其特征在于,所述调用业务逻辑包括:通过所述工作单元上的连接端口,直接调用其他工作单元上的业务逻辑。5.如权利要求1所述的方法,其特征在于,还包括:接收客户端的订阅主题;接收各个工作单元发布的消息作为待发送消息;将主题为所述订阅主题的所述待发送消息发送给所述客户端。6.一种金融系统的开发系统,其特征在于,包括:创建模块,用于创建金...

【专利技术属性】
技术研发人员:张文廖江
申请(专利权)人:深圳市丽海弘金科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1