CN105302556B - 实现计算的方法和系统以及服务器装置 - Google Patents

实现计算的方法和系统以及服务器装置 Download PDF

Info

Publication number
CN105302556B
CN105302556B CN201510704886.2A CN201510704886A CN105302556B CN 105302556 B CN105302556 B CN 105302556B CN 201510704886 A CN201510704886 A CN 201510704886A CN 105302556 B CN105302556 B CN 105302556B
Authority
CN
China
Prior art keywords
expression formula
arithmetic logic
logic expression
server
calculating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510704886.2A
Other languages
English (en)
Other versions
CN105302556A (zh
Inventor
魏亚文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jingdong Yishi Business Service Technology Co., Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201510704886.2A priority Critical patent/CN105302556B/zh
Publication of CN105302556A publication Critical patent/CN105302556A/zh
Application granted granted Critical
Publication of CN105302556B publication Critical patent/CN105302556B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种实现计算的方法和系统以及服务器装置,有助于提高计算的正确性。本发明的实现计算的方法包括:终端装置根据人机界面对应的表达式生成方式和通过该人机界面接收的计算因素配置信息生成运算逻辑表达式;所述解析服务器更新自身保存的多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式;所述解析服务器根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类;所述解析服务器根据所述计算类和所述业务系统提供的参数进行计算然后输出计算结果。

Description

实现计算的方法和系统以及服务器装置
技术领域
本发明涉及计算机技术领域,特别地涉及一种实现计算的方法和系统以及服务器装置。
背景技术
在电子商务领域中经常需要进行一些计算,例如计算各种金额或者进行销量的统计。这些计算一般需要事先形成一套计算逻辑,例如在统计销量中,需要确定哪些商品需统计或不统计;又如在结算金额时还要考虑支付方式、类型,或者促销活动的影响。因此总的来说计算逻辑比较复杂,一般需要例如统计人员或者销售人员等专门人员来设计。在计算逻辑设计形成之后,一般由程序开发人员根据计算逻辑来编写软件代码,以实现利用软件进行计算。
在现实中一般来说设计上述的计算逻辑的设计人员与程序开发人员不是同一人,这样如果在程序开发时没有正确按照计算逻辑编写代码,则程序开发人员和程序测试人员难以发现,而且计算逻辑的设计人员也无从得知,这就导致将来无法正确进行计算。也就是说现有的上述方式的计算的正确性不足。
发明内容
有鉴于此,本发明提供一种实现计算的方法和系统以及服务器装置,有助于提高计算的正确性。本发明的其他目的和效果可以从具体实施方式中得出。
为实现上述目的,根据本发明的一个方面,提供了一种实现计算的方法。
本发明的实现计算的方法包括:终端装置根据人机界面对应的表达式生成方式和通过该人机界面接收的计算因素配置信息生成运算逻辑表达式;所述解析服务器更新自身保存的多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式;所述解析服务器根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类;所述解析服务器根据所述计算类和所述业务系统提供的参数进行计算然后输出计算结果。
可选地,所述解析服务器更新自身保存的多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式的步骤之前,还包括:所述终端装置将生成的运算逻辑表达式发送给协调系统中的第一服务器,该第一服务器将该运算逻辑表达式保存在该协调系统的节点服务器中;所述第一服务器监听指定的多个节点服务器的数据状态并且在监听到节点服务器保存的运算逻辑表达式发生改变的情况下将该节点服务器保存的运算逻辑表达式发送给所述解析服务器;所述解析服务器更新自身保存的多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式的步骤包括:所述解析服务器接收所述第一服务器发送的运算逻辑表达式,并且该运算逻辑表达式替换自身保存的与该运算逻辑表达式具有相同标识的运算逻辑表达式。
可选地,所述协调系统为zookeeper系统,所述第一服务器为zookeeper系统的领导者服务器。
可选地,所述解析服务器根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类的步骤包括:所述解析服务器根据业务系统指定的运算逻辑表达式的标识,判断从缓存系统中是否能够查询到该运算逻辑表达式对应的表达式对象;若是,则从所述缓存系统中读取查询到的表达式对象并进行反序列化,然后根据反序列化之后的表达式对象生成所述计算类;否则将该运算逻辑表达式解析为表达式对象,再根据该表达式对象生成所述计算类。
根据本发明的另一方面,提供了一种实现计算的服务器装置。
本发明的实现计算的服务器装置包括:保存模块,用于保存多个运算逻辑表达式,所述运算逻辑表达式是由一个或多个终端装置根据人机界面对应的表达式生成方式和通过该人机界面接收的计算因素配置信息而生成;更新模块,用于更新所述保存模块保存的多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式;解析模块,用于根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类;计算模块,用于根据所述计算类和所述业务系统提供的参数进行计算然后输出计算结果。
可选地,所述解析模块还用于:根据业务系统指定的运算逻辑表达式的标识,判断从缓存系统中是否能够查询到该运算逻辑表达式对应的表达式对象;若是,则从所述缓存系统中读取查询到的表达式对象并进行反序列化,然后根据反序列化之后的表达式对象生成所述计算类;否则将该运算逻辑表达式解析为表达式对象,再根据该表达式对象生成所述计算类。
根据本发明的又一方面,提供了一种实现计算的系统。
本发明的实现计算的系统包括:一个或多个终端装置,所述终端装置用于根据人机界面对应的表达式生成方式和通过该人机界面接收的计算因素配置信息生成多个运算逻辑表达式;解析服务器,用于:保存所述多个运算逻辑表达式;更新所述多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式;根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类;根据所述计算类和所述业务系统提供的参数进行计算然后输出计算结果;协调系统,包括第一服务器和多个节点服务器,其中所述第一服务器用于将该运算逻辑表达式保存在所述节点服务器中,以及监听指定的多个节点服务器的数据状态并且在监听到节点服务器保存的运算逻辑表达式发生改变的情况下将该节点服务器保存的运算逻辑表达式发送给所述解析服务器;所述解析服务器还用于接收所述第一服务器发送的运算逻辑表达式,并且该运算逻辑表达式替换自身保存的与该运算逻辑表达式具有相同标识的运算逻辑表达式。
可选地,所述协调系统为zookeeper系统,所述第一服务器为zookeeper系统的领导者服务器。
可选地,还包括缓存系统,用于缓存运算逻辑表达式对应的表达式对象;所述解析服务器还用于:根据业务系统指定的运算逻辑表达式的标识,判断从缓存系统中是否能够查询到该运算逻辑表达式对应的表达式对象;若是,则从所述缓存系统中读取查询到的表达式对象并进行反序列化,然后根据反序列化之后的表达式对象生成所述计算类;否则将该运算逻辑表达式解析为表达式对象,再根据该表达式对象生成所述计算类。
根据本发明的技术方案,提供人机界面并且由计算逻辑的设计人员使用该人机界面提供计算逻辑,然后生成运算逻辑表达式;在需要计算时按照运算逻辑表达式得到计算类并且计算。这种方式一方面使计算逻辑的设计变得可视化,便于人员设计以及其他人员的阅读,另一方面使计算逻辑能够准确地被转换为运算代码,保证计算的可靠性,此外还实现了对重复使用的计算逻辑封装为运算逻辑表达式,无需每次单独设计,并且在需要修改运算逻辑的情况下可以由计算逻辑的设计人员修改后快速地转换为运算代码,提高了工作效率。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施方式的实现计算的系统的优选结构的示意图;
图2是根据本发明实施方式的生成计算类时的逻辑类图;
图3是根据本发明实施方式的实现计算的基本步骤的示意图;
图4是根据本发明实施方式的实现计算的优选具体流程的示意图;
图5是根据本发明实施方式的解析服务器的一种结构的示意图。
具体实施方式
以下结合附图对本发明的示范性实施方式做出说明,其中包括本发明实施方式的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施方式做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明实施方式的实现计算的系统的优选结构的示意图。如图1所示,实现计算的系统10可以被多个业务系统121、122、……12N调用并且进行计算。实现计算的系统10主要包括解析服务器101,多个终端装置112、113、……11N,zookeeper系统102,缓存系统103。由上述的终端装置提供人机界面,该人机界面主要供计算逻辑的设计人员使用。以下对各部分的功能进行说明。
上述的各终端装置提供类似的计算逻辑定义界面,在计算逻辑定义界面中,针对不同的要计算的内容和逻辑,通过人机界面接收计算因素配置信息。并且每个计算逻辑定义界面对应一个表达式生成引擎,该表达式生成引擎是预先定义的一套类似于自定义语法的表达式生成方式,可采用现有的各种自定义语法的方式和结构来实现。例如需要计算一些订单的指定支付类型的金额,同时考虑是否对明细进行过滤以及需要排除的业务编号,则在人机界面上选择计算因素,包括订单号、支付类型、明细过滤、业务编号这四种计算因素,其中订单号在表达式中采用预定义的字符串“orderId”,可由人员输入该字符串或者在人机界面提供的字符串选择工具中选择;支付类型在表达式中采用预定义的字符串“paydetails”,例如包括11至19,可以在人机界面中设计成下拉框供用户选择,例如用户选择了11,12,13。类似地,明细过滤和业务编号这两种计算因素在表达式中分别采用预定义的字符串“DetailsFilter”和“businessNo”,对“明细过滤”这一计算因素,在人机界面中提供选项“all”(表示全部过滤)和“none”(表示不过滤)。对“业务编号”这一计算因素,在人机界面中提供选项“no”和“yes”。最终形成如下运算逻辑表达式:
{orderId:$orderId,paydetails:[11,12,13],DetailsFilter:all,businessNo:!$businessNo}
该运算逻辑表达式表达的逻辑为:计算订单号为orderId,支付类型为11,12,13,所有明细过滤,并且业务编号不是businessNo的金额。
运算逻辑表达式中包含终结元素和非终结元素,终结元素主要是指能够采用自定义语法解释的最小语法单元,一般是具有特定含义的符号,例如算式表达式、逻辑表达式、自定义的表达式等,在人机界面上可以呈现直白的解释,例如“求平均”等。例如上述运算逻辑表达式中,paydetails之后的方括号内的内容即表示以逗号连接的“和”的逻辑关系,是一种终结元素。非终结元素主要是没有实际含义的替换符,一般是自定义的常量或者变量,可以采用键-值的方式来定义表达式中的非终结元素和要将其替换成的内容。例如上述表达式中,非终结元素orderId即为自定义的变量,在计算时它的值替换为$之后的变量的传入值。
终端装置在得出运算逻辑表达式之后可以先发送给zookeeper系统,zookeeper系统将运算逻辑表达式保存在节点中,可以按如下的树状结构来保存:/计算类别/使用系统代码/版本号/计算公式。zookeeper系统中的任一节点的改变,都会产生事件从而将最新的运算逻辑表达式发送给解析服务器。当然也可以采用其他类似功能的协调系统来使得解析服务器得到的是最新的运算逻辑表达式。
解析服务器的一个功能是对运算逻辑表达式进行解析以获得运算逻辑表达式对应的计算类。业务系统在进行计算时会调用指定的运算逻辑表达式,并提供该运算逻辑表达式中的参数类型及其值。解析服务器根据参数类型对运算逻辑表达式进行解析,可以根据自定义语法的语法树来解析。对于运算逻辑表达式中的非终结元素,调用预设的接口,按上述的键-值的关系来进行替换,另外业务系统可能指定有自定义的接口,则优先采用业务系统的接口。运算逻辑表达式可以选择支持json格式和xml格式,可进行多层嵌套。在解析时,首先将整个运算逻辑表达式加载到内存中,然后通过正则表达式匹配'${xx}'的格式,找到所有的非终结字符的起始字符下标和结束下标,再逐个字符加载到一个有限长度的栈中,实现字符的先进后出,当字符是非终结因素的时候,一直对字符做出栈处理,当字符是终结因素的时候,对终结因素的左右表达式进行映射处理,每个最小语法单元处理的过程抽象成接口,从而得到运算逻辑表达式对应的表达式对象,再根据该表达式对象采用jdk动态代理生成运算逻辑表达式对应的计算类。
缓存系统的功能是对解析服务器得到的表达式对象进行序列化之后再缓存。解析服务器在确定业务系统所指定的运算逻辑表达式后,可以首先在缓存系统中查询该运算逻辑表达式对应的表达式对象,若查询到表达式对象,则可以直接对该表达式对象进行反序列化然后得到该运算逻辑表达式对应的计算类,否则再按上文的方式对该运算逻辑表达式进行解析以得到对应的表达式对象。这种做法有助于提高处理的效率。可以采用Redis缓存系统或者其他缓存系统来实现。
在得到运算逻辑表达式对应的计算类之后,即对该计算类进行计算。计算类对象时采用的参数的数量和类型是生成计算类的时候决定的,当计算逻辑的设计人员修改了计算因素配置信息时,解析服务器即重新计算类对象,使得计算逻辑能够在线实时更新。所以可以理解为,在解析时对于不同的参数都解析为不同的计算对象,从而一个运算逻辑表达式可对应多个计算类,这样有助于避免类膨胀。每个表达式包含的因素可以很多,但是解析服务器可以在解析过程中对运算逻辑表达式按照预先设置的规则对参数进行逻辑校验,只对使用的因素对应的树结构进行解析,从而加快处理效率。这是因为计算逻辑的设计人员在提供计算因素配置信息时,有可能因考虑不周或者客观原因,提供的逻辑存在互相冲突或者冗余,即存在逻辑不可达的情况。例如对于以逻辑“或”连接的包含多个逻辑值的表达式,其中一个逻辑值为1时显然整个表达式为1,则此时可按逻辑“或”连接的包含多个逻辑值的表达式的校验规则,无需判断其他逻辑值。对于存在错误的逻辑则应舍弃,并且可以反馈至终端装置。可以看出钍对不同的参数都解析为不同的计算对象可以在该参数无法通过逻辑校验时只舍弃该参数对应的计算类,不影响其他参数对应的计算类。
计算类对象可以是java动态生成一个计算类的过程,是根据表达式动态生成的,属于非预编译类。生成的过程就是动态递归处理,简单的逻辑类图如图2所示,图2是根据本发明实施方式的生成计算类时的逻辑类图。图中21是运算逻辑表达式,22是符号表达式,处理时只关注非终结元素左右的值之间的运算关系,24是处理时采用的具体解析实现类,每个非终结元素都有自己对应的具体实现类。23是变量表达式。
图3是根据本发明实施方式的实现计算的基本步骤的示意图。如图3所示,主要有如下的步骤S31至步骤S34。
步骤S31:终端装置根据人机界面对应的表达式生成方式和通过该人机界面接收的计算因素配置信息生成运算逻辑表达式。
步骤S32:解析服务器更新自身保存的多个运算逻辑表达式中与终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式。
步骤S33:解析服务器根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类。
步骤S34:解析服务器根据上述计算类和上述业务系统提供的参数进行计算然后输出计算结果。
图4是根据本发明实施方式的实现计算的优选具体流程的示意图。如图4所示,该流程主要包括如下的步骤S01至步骤S23。
步骤S01:输出计算逻辑界面。在界面模板生成器上,人员选择要生成的表达式编辑界面模板。
步骤S02:选择相关终结元素。
步骤S03:在动态输入完成非终结元素后,整个计算过程的定义就算完成,生成相应的计算逻辑表达式。
步骤S04:计算过程定义完后,会显示出生成的计算表达式。确认后,即可以继续执行。
步骤S05:提交到zookeeper服务器后,计算表达式就能够推送到远端服务器上,直接进行同步和保存。
步骤S06:zookeeper服务器会自动对当前提交的表达式进行更新。以树节点的形式保存(表达式Id+版本号)。
步骤S07:线上服务器是基于监听者模式,所有的服务器会监听指定的树节点,当树节点改变触发change事件,调用watch方法。
步骤S08:解析服务器通过比对版本号,发现当前版本低的话会进行更新到内存。到此整个表达式就更新完成。
步骤S09:上层业务系统传入相应参数,通过计算表达式,期望计算出金额。
步骤S10:封装key与参数对象,通过key-value进行参数映射到计算表表达式上。上层业务系统可以基于key-value来计算表达式映射响应的参数。Key的格式可以是由表达式标识、上层业务系统应用程序标识以及参数名称来组成,即:表达式ID_上层业务系统appID_参数名称。value是参数的真实值,可采用任意数据类型。
步骤S11:通过表达式id获取对应的解析器。
步骤S12:参数解析和基本校验。
步骤S13:从内存中直接获取对应表达式。
步骤S14:将表达式id作为key到redis中进行查询。
步骤S15:调用redis,做read操作进行查询。这样可避免每次都进行表达式解析的初始化,有助于提高性能。
步骤S16:判断返回值是否为空,即原来表达式是否缓存到redis上。
步骤S17:如果不为空,直接将字符串反序列化成相应的java解析后的表达式对象。
步骤S18:如果为空,说明redis中未缓存相应的表达式,将原来字符串的表达式解析成java解析表达式对象。
步骤S19:根据表达式对象,通过递归的方式,生成计算类。
步骤S20:将java表达式对象反序列后存入redis服务器中。
步骤S21:对计算类的计算对外计算方法中传入上层业务系统的参数。
步骤S22:参数对应完成后,直接进行相应的解析、运算逻辑。
步骤S23:将最终结果返回到上级业务系统。
图5是根据本发明实施方式的解析服务器的一种结构的示意图。如图5所示,实现计算的服务器装置50作为软件可以设置在解析服务器中,主要包括保存模块51、更新模块52、解析模块53、以及计算模块54。保存模块51用于保存多个运算逻辑表达式,所述运算逻辑表达式是由一个或多个终端装置根据人机界面对应的表达式生成方式和通过该人机界面接收的计算因素配置信息而生成;更新模块52用于更新所述保存模块保存的多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式;解析模块53用于根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类;计算模块54用于根据所述计算类和所述业务系统提供的参数进行计算然后输出计算结果。
根据本发明实施方式,提供人机界面并且由计算逻辑的设计人员使用该人机界面提供计算逻辑,然后生成运算逻辑表达式;在需要计算时按照运算逻辑表达式得到计算类并且计算。这种方式一方面使计算逻辑的设计变得可视化,便于人员设计以及其他人员的阅读,另一方面使计算逻辑能够准确地被转换为运算代码,保证计算的正确性,此外还实现了对重复使用的计算逻辑封装为运算逻辑表达式,无需每次单独设计,并且在需要修改运算逻辑的情况下可以由计算逻辑的设计人员修改后快速地转换为运算代码,提高了工作效率。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (11)

1.一种实现计算的方法,其特征在于,包括:
终端装置根据人机界面对应的表达式生成方式和通过该人机界面接收的计算因素配置信息生成运算逻辑表达式;
解析服务器更新自身保存的多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式;
所述解析服务器根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类;
所述解析服务器根据所述计算类和所述业务系统提供的参数进行计算然后输出计算结果。
2.根据权利要求1所述的方法,其特征在于,
所述解析服务器更新自身保存的多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式的步骤之前,还包括:所述终端装置将生成的运算逻辑表达式发送给协调系统中的第一服务器,该第一服务器将该运算逻辑表达式保存在该协调系统的节点服务器中;所述第一服务器监听指定的多个节点服务器的数据状态并且在监听到节点服务器保存的运算逻辑表达式发生改变的情况下将该节点服务器保存的运算逻辑表达式发送给所述解析服务器;
所述解析服务器更新自身保存的多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式的步骤包括:所述解析服务器接收所述第一服务器发送的运算逻辑表达式,并且该运算逻辑表达式替换自身保存的与该运算逻辑表达式具有相同标识的运算逻辑表达式。
3.根据权利要求2所述的方法,其特征在于,所述协调系统为zookeeper系统,所述第一服务器为zookeeper系统的领导者服务器。
4.根据权利要求1,2或3所述的方法,其特征在于,所述解析服务器根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类的步骤包括:
所述解析服务器根据业务系统指定的运算逻辑表达式的标识,判断从缓存系统中是否能够查询到该运算逻辑表达式对应的表达式对象;若是,则从所述缓存系统中读取查询到的表达式对象并进行反序列化,然后根据反序列化之后的表达式对象生成所述计算类;否则将该运算逻辑表达式解析为表达式对象,再根据该表达式对象生成所述计算类。
5.一种实现计算的服务器装置,其特征在于,包括:
保存模块,用于保存多个运算逻辑表达式,所述运算逻辑表达式是由一个或多个终端装置根据人机界面对应的表达式生成方式和通过该人机界面接收的计算因素配置信息而生成;
更新模块,用于更新所述保存模块保存的多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式;
解析模块,用于根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类;
计算模块,用于根据所述计算类和所述业务系统提供的参数进行计算然后输出计算结果。
6.根据权利要求5所述的服务器装置,其特征在于,所述解析模块还用于:根据业务系统指定的运算逻辑表达式的标识,判断从缓存系统中是否能够查询到该运算逻辑表达式对应的表达式对象;若是,则从所述缓存系统中读取查询到的表达式对象并进行反序列化,然后根据反序列化之后的表达式对象生成所述计算类;否则将该运算逻辑表达式解析为表达式对象,再根据该表达式对象生成所述计算类。
7.一种实现计算的系统,其特征在于,包括:
一个或多个终端装置,所述终端装置用于根据人机界面对应的表达式生成方式和通过该人机界面接收的计算因素配置信息生成多个运算逻辑表达式;
解析服务器,用于:保存所述多个运算逻辑表达式;更新所述多个运算逻辑表达式中与所述终端装置生成的运算逻辑表达式具有相同标识的运算逻辑表达式;根据业务系统指定的运算逻辑表达式获得该运算逻辑表达式对应的计算类;根据所述计算类和所述业务系统提供的参数进行计算然后输出计算结果;
协调系统,包括第一服务器和多个节点服务器,其中所述第一服务器用于将该运算逻辑表达式保存在所述节点服务器中,以及监听指定的多个节点服务器的数据状态并且在监听到节点服务器保存的运算逻辑表达式发生改变的情况下将该节点服务器保存的运算逻辑表达式发送给所述解析服务器;
所述解析服务器还用于接收所述第一服务器发送的运算逻辑表达式,并且该运算逻辑表达式替换自身保存的与该运算逻辑表达式具有相同标识的运算逻辑表达式。
8.根据权利要求7所述的系统,其特征在于,所述协调系统为zookeeper系统,所述第一服务器为zookeeper系统的领导者服务器。
9.根据权利要求7或8所述的系统,其特征在于,
还包括缓存系统,用于缓存运算逻辑表达式对应的表达式对象;
所述解析服务器还用于:根据业务系统指定的运算逻辑表达式的标识,判断从缓存系统中是否能够查询到该运算逻辑表达式对应的表达式对象;若是,则从所述缓存系统中读取查询到的表达式对象并进行反序列化,然后根据反序列化之后的表达式对象生成所述计算类;否则将该运算逻辑表达式解析为表达式对象,再根据该表达式对象生成所述计算类。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的方法。
11.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-4中任一所述的方法。
CN201510704886.2A 2015-10-27 2015-10-27 实现计算的方法和系统以及服务器装置 Active CN105302556B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510704886.2A CN105302556B (zh) 2015-10-27 2015-10-27 实现计算的方法和系统以及服务器装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510704886.2A CN105302556B (zh) 2015-10-27 2015-10-27 实现计算的方法和系统以及服务器装置

Publications (2)

Publication Number Publication Date
CN105302556A CN105302556A (zh) 2016-02-03
CN105302556B true CN105302556B (zh) 2018-10-16

Family

ID=55199854

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510704886.2A Active CN105302556B (zh) 2015-10-27 2015-10-27 实现计算的方法和系统以及服务器装置

Country Status (1)

Country Link
CN (1) CN105302556B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109032654B (zh) * 2017-06-08 2022-06-07 北京京东尚科信息技术有限公司 在服务器中配置参数的方法和装置、服务器和存储介质
CN108920183B (zh) * 2018-05-31 2022-11-18 创新先进技术有限公司 一种业务决策方法、装置及设备
CN108804166B (zh) * 2018-05-31 2022-03-01 创新先进技术有限公司 确定业务资产的流动性指标的方法及装置
CN110390072A (zh) * 2019-07-16 2019-10-29 浙江大搜车软件技术有限公司 业务数值计算方法、装置、计算机设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102223396A (zh) * 2011-05-12 2011-10-19 杭州动量云霄网络技术有限公司 计算机系统中云计算业务逻辑与用户界面关联系统与方法
CN102521411A (zh) * 2011-12-28 2012-06-27 畅捷通信息技术股份有限公司 公式及公式数据处理装置和公式及公式数据处理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9317499B2 (en) * 2013-04-11 2016-04-19 International Business Machines Corporation Optimizing generation of a regular expression

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102223396A (zh) * 2011-05-12 2011-10-19 杭州动量云霄网络技术有限公司 计算机系统中云计算业务逻辑与用户界面关联系统与方法
CN102521411A (zh) * 2011-12-28 2012-06-27 畅捷通信息技术股份有限公司 公式及公式数据处理装置和公式及公式数据处理方法

Also Published As

Publication number Publication date
CN105302556A (zh) 2016-02-03

Similar Documents

Publication Publication Date Title
CN109344170B (zh) 流数据处理方法、系统、电子设备及可读存储介质
CN105302556B (zh) 实现计算的方法和系统以及服务器装置
CN107612727B (zh) 分布式健康检查方法、计算设备及计算机存储介质
CN110276074B (zh) 自然语言处理的分布式训练方法、装置、设备及存储介质
CN110188135B (zh) 文件生成方法及设备
CN106657192B (zh) 一种用于呈现服务调用信息的方法与设备
CN109905293A (zh) 一种终端设备识别方法、系统及存储介质
CN110083526A (zh) 应用程序测试方法、装置、计算机装置及存储介质
CN110413507B (zh) 系统测试方法、装置、计算机设备和存储介质
CN110795697A (zh) 逻辑表达式的获取方法、装置、存储介质以及电子装置
CN110310100A (zh) 项目管理方法、装置、电子设备及存储介质
CN109462507A (zh) 配置更新方法、装置、系统及电子设备
CN107368500B (zh) 数据抽取方法及系统
CN113590593A (zh) 数据表信息的生成方法和装置、存储介质及电子装置
CN104536887B (zh) 通讯数据检测方法和装置
CN115860877A (zh) 一种产品营销方法、装置、设备及介质
CN113190587A (zh) 实现业务数据处理的数据处理方法和装置
CN113051178A (zh) 测试数据构造方法、装置、设备及介质
CN109522210A (zh) 接口测试参数分析方法、装置、电子装置及存储介质
CN113504912B (zh) 实时任务的处理方法和装置、存储介质及电子装置
CN113641523B (zh) 一种日志处理方法及装置
CN112037002B (zh) 一种基于分布式支付系统的去碎片化报文处理方法及系统
US20230333836A1 (en) System to identify and characterize code changes
CN117290360A (zh) 数据处理方法、装置、存储介质以及电子设备
CN117493151A (zh) 项目测试方法、装置、存储介质以及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200407

Address after: 223800 room 416-429, Hengtong mansion, 19 Hongze East Road, Suyu District, Suqian, Jiangsu.

Patentee after: Suqian Yishi Business Secretary Co.,Ltd.

Address before: 100080 Beijing city Haidian District xingshikou Road No. 65 west Shan Creative Park District 11C four floor East West 1-4 layer 1-4 layer

Co-patentee before: BEIJING JINGDONG CENTURY TRADING Co.,Ltd.

Patentee before: BEIJING JINGDONG SHANGKE INFORMATION TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200525

Address after: 100176 room a401, floor 4, building 2, No. 18, Kechuang 11th Street, Beijing Economic and Technological Development Zone, Daxing District, Beijing

Patentee after: Jingdong Yishi Business Service Technology Co., Ltd

Address before: 223800 room 416-429, Hengtong mansion, 19 Hongze East Road, Suyu District, Suqian, Jiangsu.

Patentee before: Suqian Yishi Business Secretary Co.,Ltd.

TR01 Transfer of patent right