通过调用和协调算法来获取计算结果的方法和系统的利记博彩app

文档序号:9235263阅读:775来源:国知局
通过调用和协调算法来获取计算结果的方法和系统的利记博彩app
【技术领域】
[0001]本发明涉及计算机程序的开发和应用,具体提供一种通过调用和协调算法来获取计算结果的方法和系统。
【背景技术】
[0002]现有的计算机程序开发过程涉及业务人员与程序开发人员之间的紧密配合。具体而言,当需要开发一款实现特定业务功能的程序时,首先由业务人员将该业务的目标和需求描述给程序开发人员,在充分理解该业务的细节之后,程序开发人员将这些需求和细节翻译成计算机可识别的代码。这些程序的应用包括三个主要过程,即,读取数据、程序计算以及系统给出计算结果。
[0003]上述程序的开发和应用存在一些问题。首先,程序开发需要开发人员准确理解具体业务内容,否则便会导致开发出的程序运算出错甚至无法实现业务需求。其次,如果出现新的业务,就需要修改整个系统程序。再者,整个系统如果有一个计算出错,也需要全部重新计算;如果业务或数据格式有变动就需要更新整个系统。并且,系统的所有错误都需要程序开发人员通过程序语言来调试。

【发明内容】

[0004]本发明旨在解决现有技术中的上述问题,S卩,解决现有的计算机程序开发过程过度依赖程序开发人员的问题。
[0005]为此目的,本发明提供一种通过调用和协调算法来获取计算结果的方法,该方法包括下列步骤:提供数据源,该数据源包括作为运算对象而存储的基础数据;提供算法库,该算法库包括实现具体业务所需的各种算法;其特征在于还包括下列步骤:将具体业务的计算过程按照优先级分成多个层;为每个层分配层域协调器、一个或多个算法以及与所述算法对应的一个或多个数据队列,所述算法来自所述算法库,而所述数据队列来自所述数据源,其中所述层域协调器用于约定同层或不同层的算法与数据队列之间的对应关系,以便根据业务逻辑形成不同的计算处理路径;以及汇聚各个层域协调器在每次业务计算过程中形成的动态业务计算逻辑拓扑,从而合并生成全局业务计算逻辑拓扑。
[0006]在优选实施方式中,每一层的数据队列由该层的层域协调器根据本层算法的个数动态生成,并且一个数据队列仅对应于一个算法。
[0007]在优选实施方式中,一个算法可以从与同层其他算法对应的数据队列上获取数据。
[0008]在优选实施方式中,当一个算法需要跨层获取数据时,由跨下层的算法将计算结果挂到自己的数据输入队列上。
[0009]在优选实施方式中,所述跨层和跨数据队列的数据获取由涉及到的各个层的层域协调器进行配置和约定。
[0010]在优选实施方式中,当同层的一个算法的计算结果需要作为另一个算法的数据输入时,所述另一个算法将越级到上一层。
[0011]在更优选的实施方式中,所述全局业务计算逻辑拓扑能够显示每个计算路径的每个节点涉及到的算法、参数和数据,并且所述全局业务计算逻辑拓扑在后续同类业务的计算过程中被直接调用。
[0012]在更优选的实施方式中,所述多个层按照从最底层到最顶层的顺序优先级逐渐升高,并且所述方法的计算过程也是从最底层到最顶层依次进行。
[0013]在更优选的实施方式中,当同层的一个算法引用另一个算法时,所述另一个算法的优先级高于所述一个算法。
[0014]在更优选的实施方式中,在同一层内,如果有多个算法,则按照被引用的顺序来排列优先级,并且不引用其他算法的那个算法的优先级最高。
[0015]在更优选的实施方式中,具有相同优先级的算法在同一时刻被分布式执行。
[0016]在更优选的实施方式中,所述全局业务计算逻辑拓扑由全局诊断器生成,并且所述全局诊断器和/或所述层域协调器对各个算法和算法的结果被调用的次数进行统计,以便确定特定算法是否需要具有实体。这里的表述“算法具有实体”意指系统会在没有开始计算的时候为了提高性能(节约准备时间)而在内存中先创建算法的实体。类似cache (缓存),主要用于提高系统响应速度。
[0017]在更优选的实施方式中,所述全局诊断器和/或所述层域协调器对各个算法的执行时间长度进行统计,以便分析算法的性能。
[0018]在更优选的实施方式中,当一个算法不能执行时,引用该算法的算法也不再执行;并且当一个不能执行的算法恢复执行时,引用该算法的算法也恢复执行。
[0019]在更优选的实施方式中,所述全局诊断器和所述层域协调器都是调度算法。
[0020]根据本发明的另一个方面,提供了一种通过调用和协调算法来获取计算结果的系统,包括:数据源,该数据源包括作为运算对象而存储的基础数据;算法库,该算法库包括实现具体业务所需的各种算法;其特征在于还包括:按照具体业务计算过程的优先级分出的多个层,每个层都包括层域协调器、一个或多个算法以及与所述算法对应的一个或多个数据队列,所述算法来自所述算法库,而所述数据队列来自所述数据源,其中所述层域协调器用于约定同层或不同层的算法与数据队列之间的对应关系,以便根据业务逻辑形成不同的计算处理路径;以及全局诊断器,该全局诊断器用于汇聚各个层域协调器在每次业务计算过程中形成的动态业务计算逻辑拓扑,从而合并生成全局业务计算逻辑拓扑。
[0021]在优选实施方式中,每一层的数据队列由该层的层域协调器根据本层算法的个数动态生成,并且一个数据队列仅对应于一个算法。
[0022]在优选实施方式中,一个算法可以从与同层其他算法对应的数据队列上获取数据。
[0023]在优选实施方式中,当一个算法需要跨层获取数据时,由跨下层的算法将计算结果挂到自己的数据输入队列上。
[0024]在优选实施方式中,所述跨层和跨数据队列的数据获取由涉及到的各个层的层域协调器进行配置和约定。
[0025]在优选实施方式中,当同层的一个算法的计算结果需要作为另一个算法的数据输入时,所述另一个算法将越级到上一层。
[0026]在更优选的实施方式中,所述全局业务计算逻辑拓扑能够显示每个计算路径的每个节点涉及到的算法、参数和数据,并且所述全局业务计算逻辑拓扑在后续同类业务的计算过程中被直接调用。
[0027]在更优选的实施方式中,所述多个层按照从最底层到最顶层的顺序优先级逐渐升高,并且所述方法的计算过程也是从最底层到最顶层依次进行。
[0028]在更优选的实施方式中,当同层的一个算法引用另一个算法时,所述另一个算法的优先级高于所述一个算法。
[0029]在更优选的实施方式中,在同一层内,如果有多个算法,则按照被引用的顺序来排列优先级,并且不引用其他算法的那个算法的优先级最高。
[0030]在更优选的实施方式中,具有相同优先级的算法在同一时刻被分布式执行。
[0031]在更优选的实施方式中,所述全局诊断器和/或所述层域协调器对各个算法和算法的结果被调用的次数进行统计,以便确定特定算法是否需要具有实体。
[0032]在更优选的实施方式中,所述全局诊断器和/或所述层域协调器对各个算法的执行时间长度进行统计,以便分析算法的性能。
[0033]在更优选的实施方式中,当一个算法不能执行时,引用该算法的算法也不再执行;并且当一个不能执行的算法恢复执行时,引用该算法的算法也恢复执行。
[0034]在更优选的实施方式中,所述全局诊断器和所述层域协调器都是调度算法。
[0035]本领域技术人员能够理解的是,本发明的系统和方法形成了一种自底层向顶层逐级计算的弹性分层框架,每个层的层域协调器负责该层的算法和数据队列的调用和协调,而全局诊断器负责
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1