CN104216729B - 应用系统的逻辑模块更新实现方法及装置 - Google Patents

应用系统的逻辑模块更新实现方法及装置 Download PDF

Info

Publication number
CN104216729B
CN104216729B CN201310221388.3A CN201310221388A CN104216729B CN 104216729 B CN104216729 B CN 104216729B CN 201310221388 A CN201310221388 A CN 201310221388A CN 104216729 B CN104216729 B CN 104216729B
Authority
CN
China
Prior art keywords
variables
logical operation
application system
output
logic
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
CN201310221388.3A
Other languages
English (en)
Other versions
CN104216729A (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201310221388.3A priority Critical patent/CN104216729B/zh
Publication of CN104216729A publication Critical patent/CN104216729A/zh
Application granted granted Critical
Publication of CN104216729B publication Critical patent/CN104216729B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种应用系统的逻辑模块更新实现方法及装置,根据待更新业务逻辑所需要的参数信息和运算逻辑,定义逻辑运算变量组,并根据指定的系统接口编写运算逻辑编码;将编写的所述逻辑运算编码打包成jar数据包,上传至应用系统的数据库中选定的存储位置处;从数据库中加载上传的所述jar数据包到应用系统中,通过所指定的系统接口初始化所述逻辑运算编码,获取逻辑运算的输出结果信息,生成可供应用系统调用的QL变量。在需要更新应用系统中的模块时,不需要重新发布系统,提高了更新的速度和效率,实现更方便。

Description

应用系统的逻辑模块更新实现方法及装置
技术领域
本发明涉及网络技术领域,尤指一种应用系统的逻辑模块更新实现方法及装置。
背景技术
在实时事件处理等应用系统中,随着业务的不断变化,需要经常更新其中的逻辑运算单元等逻辑模块,以满足业务变化的需求。
目前,为了满足不断变化的业务需求,以实时事件处理的应用系统为例,通常采用脚本方式对事件进行处理来达到满足需求。但是,如果运算逻辑很复杂,通过脚本方式就很难实现,此时必须在系统中使用java原生代码来编写逻辑模块,这将导致不得不重新发布系统。
例如:当应用系统需要增加对用户的行为信息进行监控的功能时,需要增加相应的逻辑模块来实现逻辑运算功能,此时需要编写相应的逻辑模块,实现将运算逻辑算法本身固化到程序代码中,由于系统已经改变因此需要重新发布整个系统。
由于系统的业务需求不断变化,重新发布系统来实现新功能的增加和原有功能的删减等系统更新操作,将导致系统更新的的速度和效率低下,使系统更新费时费力;且重新发布系统会导致系统暂时不能使用,影响用户正常的使用应用系统。
发明内容
本发明实施例提供一种应用系统的逻辑模块更新实现方法及装置,用以解决现有技术中存在的应用系统模块更新时需要重新发布系统的问题。
本发明实施例提供一种应用系统的逻辑模块更新实现方法,包括:
根据待更新业务逻辑所需要的参数信息和运算逻辑,定义逻辑运算变量组,并根据指定的系统接口编写运算逻辑编码;
将编写的所述逻辑运算编码打包成jar数据包,上传至应用系统的数据库中选定的存储位置处;
从数据库中加载上传的所述jar数据包到应用系统中,通过所指定的系统接口初始化所述逻辑运算编码,获取逻辑运算的输出结果信息,生成可供应用系统调用的QL变量。
在一些可选的实施例中,所述根据待更新业务逻辑所需要的参数信息和运算逻辑,定义逻辑运算变量组,并根据指定的系统接口编写运算逻辑编码,具体包括:
根据待更新业务逻辑所需要的输入参数,定义逻辑运算变量组;
根据指定的系统接口的要求,确定与待更新业务逻辑所需要的输出参数对应的逻辑运算输出结果信息;
根据输入参数和输出参数之间的运算逻辑、所述变量组和所述输出结果信息,编写运算逻辑编码。
在一些可选的实施例中,所述从数据库中加载上传的所述jar数据包到应用系统中,具体包括:
根据上传所述jar数据包时分配给所述jar数据包的数据包标识号从数据库中选定的存储位置处获取所述jar数据包,加载所述jar数据包中的类并调用所指定的系统接口初始化所述逻辑运算编码。
在一些可选的实施例中,所述生成可供应用系统调用的QL变量,具体包括:
根据所述变量组生成可供应用系统调用的每个输入参数对应的输入QL变量,以及根据所述逻辑运算输出结果信息生成每个输出参数对应的输出QL变量。
在一些可选的实施例中,所述生成可供应用系统调用的QL变量之后,还包括:
监控应用系统中的用户行为,获取作为所述待更新业务逻辑输入参数的用户行为数据;
调用生成的输入QL变量,将获取到的所述用户行为数据作为输入QL变量的输入数据,执行加载后的所述逻辑运算编码,并调用输出QL变量,在执行输出QL变量过程中获取加载后的所述逻辑运算编码的逻辑运算结果作为输出数据,得到所述待更新业务逻辑所需要的输出参数,作为对所述用户行为数据的分析结果。
在一些可选的实施例中,所述用户行为数据为用户登陆行为数据,相应的,所述对所述用户行为数据的分析结果是否异地登陆;
所述用户行为数据为拍下商品操作和/或付款操作,相应的,所述对所述用户行为数据的分析结果是否为恶意操作行为。
本发明实施例还提供一种应用系统的逻辑模块更新实现装置,包括:
开发模块,用于根据待更新业务逻辑所需要的参数信息和运算逻辑,定义逻辑运算变量组并根据指定的编写运算逻辑编码;
数据上传模块,用于将编写的所述逻辑运算编码打包成jar数据包,上传至应用系统的数据库中选定的存储位置处;
加载模块,用于从数据库中加载上传的所述jar数据包到应用系统中,并通过所指定的系统接口初始化所述逻辑运算编码获取逻辑运算的输出结果信息,生成可供应用系统调用的QL变量。
在一些可选的实施例中,所述开发模块,具体用于:
根据待更新业务逻辑所需要的输入参数,定义逻辑运算变量组;根据指定的系统接口的要求,确定与待更新业务逻辑所需要的输出参数对应的逻辑运算输出结果信息;根据输入参数和输出参数之间的运算逻辑、所述变量组和所述输出结果信息,编写运算逻辑编码。
在一些可选的实施例中,所述加载模块,具体用于:
根据上传所述jar数据包时分配给所述jar数据包的数据包标识号从数据库中选定的存储位置处获取所述jar数据包,加载所述jar数据包中的类并调用所指定的系统接口初始化所述逻辑运算编码。
在一些可选的实施例中,所述加载模块,具体用于:
根据所述变量组生成可供应用系统调用的每个输入参数对应的输入QL变量,以及根据所述逻辑运算输出结果信息生成每个输出参数对应的输出QL变量。
在一些可选的实施例中,上述应用系统的逻辑模块更新实现装置,还包括:
执行模块,用于在所述生成可供应用系统调用的QL变量之后,监控应用系统中的用户行为,获取作为所述待更新业务逻辑输入参数的用户行为数据;调用生成的QL变量,将获取到的所述用户行为数据作为输入QL变量的输入数据,执行加载后的所述逻辑运算编码,并调用输出QL变量,在执行输出QL变量过程中获取加载后的所述逻辑运算编码的逻辑运算结果作为输出数据,得到所述待更新业务逻辑所需要的输出参数,作为对所述用户行为数据的分析结果。
本发明有益效果如下:
本发明实施例提供的应用系统的逻辑模块更新实现方法及装置,编写运算逻辑编码后打包成jar数据包,上传至应用系统的数据库中选定的存储位置处;从数据库中加载上传的所述jar数据包到应用系统中,并通过所指定的系统接口初始化逻辑运算编码,生成可供应用系统调用的QL变量,在系统的业务需求变化,需要增加新功能和删减原有功能时,通过逻辑模块的编码、上传和自动加载,实现功能的增加和删减等更新操作,从而可以实现逻辑模块的自动加载,且不用重新发布系统,这提高了系统更新的的速度和效率低下,使系统更新省时省力;且不用重新发布系统,不会影响用户正常的使用应用系统。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例中应用系统的逻辑模块更新实现装置的结构示意图;
图2为本发明实施例中应用系统的逻辑模块更新实现方法的流程图;
图3为本发明实施例中逻辑模块开发过程的实现流程示意图;
图4为本发明实施例中逻辑模块更新部署过程的实现流程示意图;
图5为本发明实施例中逻辑模块运用过程的实现流程示意图;
图6为本发明实施例中应用系统的逻辑模块更新装置的具体结构示例图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了解决现有技术中,应用系统逻辑模块更新时需要重新发布系统的问题,本发明实施例提供一种应用系统的逻辑模块更新实现方法,该方法通过如图1所示的装置实现,该方法流程如图2所示。
如图1所示的应用系统的逻辑模块更新实现装置,包括开发模块10、数据上传模块20和加载模块30。
模块开发模块10,用于根据待更新业务逻辑所需要的参数信息和运算逻辑,定义逻辑运算变量组并根据指定的系统接口编写运算逻辑编码;
数据上传模块20,用于将编写的逻辑运算编码打包成jar数据包,上传至应用系统的数据库中选定的存储位置处。
加载模块30,用于从数据库中加载上传的jar数据包到应用系统中,并通过所指定的系统接口初始化所述逻辑运算编码获取逻辑运算的输出结果信息,生成可供应用系统调用的QL变量。该加载模块30一般可以设置在应用系统中,实现将上传的jar数据包加载到应用系统中。
优选的,上述开发模块10,具体用于根据待更新业务逻辑所需要的输入参数,定义逻辑运算变量组;根据指定的系统接口的要求,确定与待更新业务逻辑所需要的输出参数对应的逻辑运算输出结果信息;根据输入参数和输出参数之间的运算逻辑、定义的逻辑运算变量组和输出结果信息,编写运算逻辑编码。
优选的,上述加载模块30,具体用于根据上传jar数据包时分配给jar数据包的数据包标识号从数据库中选定的存储位置处获取jar数据包,加载jar数据包中的类并调用所指定的系统接口初始化jar包中的逻辑运算编码。
优选的,上述加载模块30,具体用于根据定义的逻辑运算变量组生成可供应用系统调用的每个输入参数对应的输入QL变量,以及根据逻辑运算输出结果信息生成每个输出参数对应的输出QL变量。
优选的,上述应用系统的逻辑模块更新实现装置,还包括:
执行模块40,用于在生成可供应用系统调用的QL变量之后,监控应用系统中的用户行为,获取作为待更新业务逻辑输入参数的用户行为数据;调用生成的QL变量,将获取到的用户行为数据作为输入QL变量的输入数据,执行加载后的逻辑运算编码,并调用输出QL变量,在执行输出QL变量过程中获取加载后的逻辑运算编码的逻辑运算结果作为输出数据,得到待更新业务逻辑所需要的输出参数,作为对用户行为数据的分析结果。。
如图2所示的应用系统的逻辑模块更新实现方法,包括如下步骤:
步骤S11:根据待更新业务逻辑所需要的参数信息和运算逻辑,定义逻辑运算变量组,并根据指定的系统接口编写运算逻辑编码。
在应用系统一般包括多个逻辑模块,通过不同的逻辑模块来实现执行不同的业务逻辑,应用系统可以是脚本系统或其他类型的应用系统,更新业务逻辑包括增加业务逻辑、删减业务逻辑、改变原有业务逻辑中的一种或几种。
当应用系统中需要更新业务逻辑时,需要确定待更新业务逻辑所需要的参数信息和运算逻辑,参数信息包括输入参数和输出参数等,输入参数经运算逻辑运算后得到输出参数。然后根据输入参数和输出参数、运算逻辑等编写待更新业务逻辑的逻辑运算编码。
具体的,根据待更新业务逻辑所需要的输入参数,定义逻辑运算变量组;根据指定的系统接口的要求,确定与待更新业务逻辑所需要的输出参数对应的逻辑运算输出结果信息;根据输入参数和输出参数之间的运算逻辑与上述定义的逻辑运算变量组和输出结果信息,编写运算逻辑编码。
其中,变量是指注入到脚本系统中的java类对象,可在脚本中使用。脚本是指应用系统可以动态加载的满足一定编程语法的程序代码。
上述步骤S11为逻辑模块的开发过程。
步骤S12:将编写的逻辑运算编码打包成jar数据包,上传至应用系统的数据库中选定的存储位置处。
本发明的方法中,在编写完待更新业务逻辑的逻辑运算编码后,可以通过动态加载的方式将编写好的逻辑运算编码加载到现有的应用系统中,加载之前现需要将逻辑运算编码打包成jar数据包,上传至应用系统数据库中选定的存储位置处,以便于后续加载逻辑运算编码时调用该jar数据包。在将jar数据包上传至数据库中时,会给jar数据包分配一个数据包标识号(ID)。
步骤S13:从数据库中加载上传的jar数据包到应用系统中,通过所指定的系统接口初始化所述逻辑运算编码,以获取逻辑运算的输出结果信息,生成可供应用系统调用的查询语言(Query Language,QL)变量。
应用系统根据上传jar数据包时分配给jar数据包的数据包标识号从数据库中选定的存储位置处获取上传的jar数据包,加载jar数据包中的类并调用所指定的系统接口初始化逻辑运算编码,实现将jar数据包加载到应用系统中;根据jar数据包中包含的所定义的变量组生成可供应用系统调用的每个输入参数对应的输入QL变量,以及根据获取的逻辑运算输出结果信息,并生成每个输出参数对应的输出QL变量。
QL变量是指,在注入到脚本系统中的可供脚本程序直接调用的一段子脚本,调用方式同变量。
上述步骤S12和步骤S13为逻辑模块的更新部署过程。
优选的,上述逻辑运算模块的更新方法还包括逻辑模块运用过程,参见下列步骤S14和步骤S15所述。
步骤S14:监控应用系统中的用户行为,获取作为待更新业务逻辑输入参数的用户行为数据。
应用系统中的业务逻辑可以是通过对用户行为数据的处理,对用户行为数据进行分析或对用户行为进行监控。因此,在将业务逻辑加载到应用系统中之后,可以通过监控采集用户行为数据,输入业务逻辑中进行处理的方式,实现对用户行为的分析和/或监控,采集到的用户行为数据一般作为输入数据输入,分析结果作为输出数据输出。
步骤S15:调用生成的QL变量,将获取到的用户行为数据作为输入QL变量的输入数据,执行加载后的逻辑运算编码,并调用输出QL变量,在执行输出QL变量过程中获取加载后的所述逻辑运算编码的逻辑运算结果作为输出参数,并作为对用户行为数据的分析结果。
上述步骤S13中生成的输入QL变量,在输入用户行为数据时调用,从而实现将用户行为数据输入应用系统进行分析。上述步骤S13中生成的输出QL变量在输出分析结果时调用,实现将分析结果呈现出来。在通过输入QL变量输入用户行为数据后,执行加载的逻辑运算编码即可得到输出数据。
用户行为数据可以有多种,得到的分析结果也可以有多种,例如:用户行为数据为用户登陆行为数据,相应的,对所述用户行为数据的分析结果是否异地登陆;又例如:用户行为数据为拍下商品操作和/或付款操作,相应的,对用户行为数据的分析结果是否为恶意操作行为等。
下面通过具体实施例分别详细说明逻辑运算模块的开发、更新部署和运用三个过程的具体实现流程。
如图3所示为逻辑模块的开发过程,该过程包括下列步骤:
步骤S101:根据待更新业务逻辑所需要的参数信息和运算逻辑,定义逻辑运算变量组。
以应用系统为规则脚本系统为例,规则脚本系统是一种基于脚本的规则系统,通过建立一些规则来对用户的行为加以监控以及约束。系统接收用户的行为信息比如登陆、拍下商品、付款等等信息,并对这些信息加以分析来确定用户的行为是否安全,例如,是否是异地登陆,如果是则会让用户进行手机验证。还可以有更复杂的规则逻辑来判断用户行为是否为恶意行为,例如如果判断出用户为恶意购买,则会将其订单关闭。
要更新规则脚本系统的业务逻辑时,例如,待更新的业务逻辑为采集用户的登陆行为数据确定用户行为是否安全,比如是否异地登陆,操作行为是否为恶意行为等。以判定是否异地登陆为例,此时所需要的输入参数为用户的登陆行为数据,例如:用户当前登录的IP地址,登录的账号ID,登录的UMID(同机登录标志)等;运算逻辑可以根据判断是否异地登陆的设定规则确定,定义的逻辑运算变量组包括:逻辑运算输入变量,实现输入用户的登陆行为数据等输入参数的输入。逻辑运算输出参数为用户是否异地登陆的分析结果,根据是否异地登陆的分析结果判定用户行为是否安全。以判定是否有恶意操作行为为例,此时所需要的参数信息为用户的业务操作行为,比如拍下商品,付款操作等操作,具体的可以包括当前用户操作所涉及到的用户ID、操作的商品类目、价格、库存量以及该用户的历史操作行为,运算逻辑可以根据判断用户是否恶意操作的设定规则确定,定义的逻辑运算变量组包括:逻辑运算输入变量,实现输入用户的业务操作行为数据。逻辑运算输出参数为用户是否恶意操作的分析结果,根据是否恶意操作的分析结果判定用户行为是否安全。
步骤S102:根据指定的系统接口编写运算逻辑编码。
该步骤实现运算逻辑编码的编写,根据指定的系统接口,确定与待更新业务逻辑所需要的输出参数对应的逻辑运算输出结果信息,根据输入参数和输出参数之间的运算逻辑、定义的逻辑运算变量组和上述的输出结果信息,编写运算逻辑编码。
沿用上边的例子,以判定是否异地登陆为例,需要根据述输入参数得到用户异地登陆分析结果这一输出参数,根据指定的系统接口的要求,确定与该输出参数对应的逻辑运算输出结果信息,从而编写好分析用户是否异地登陆的运算逻辑编码,实现通过定义的逻辑运算变量组输入用户的登陆行为数据等相关输入参数,根据输入参数通过逻辑编码的运算得到输出结果信息,得到用户是否为异地登陆的分析结果。以判定是否有恶意操作行为为例,需要根据述输入参数得到用户是否有恶意操作的分析结果这一输出参数,根据指定的系统接口的要求,确定与该输出参数对应的逻辑运算输出结果信息,从而编写好分析用户是否有恶意操作的运算逻辑编码,实现通过定义的逻辑运算变量组输入用户的用户的业务操作行为数据等相关输入参数,根据输入参数通过逻辑编码的运算得到输出结果信息,得到用户是否有恶意操作的分析结果。
步骤S103:将编写好的逻辑运算编码打包成jar数据包。
对于需要部署的一个新的运算逻辑,例如数据挖掘的一些算法等,必须实现指定的一个接口,并将算法所需的参数通过该接口传入,然后算法在处理完传入的数据后返回运算结果。逻辑模块的开发即是为了实现这样一个新的逻辑运算逻辑的部署。
如图4所示为逻辑模块的更新部署过程,该过程包括下列步骤:
步骤S201:将打包好的jar数据包,上传至应用系统的数据库中选定的存储位置处。
沿用上边的例子,将打包好的包括分析用户是否异地登陆的逻辑运算编码的jar数据包上传至应用系统中,一般应用系统会包括存储数据的服务器作为数据库,将jar数据包上传至服务器中指定的存储位置处,应用系统会为上传的数据包分配数据包标识号(ID),该标识号作为后续应用系统调用该数据包的标识。
步骤S202:根据上传jar数据包时分配给jar数据包的数据包标识号,从数据库中选定的存储位置处获取上传的jar数据包,加载jar数据包中的类。
Jar数据包中包括应用系统程序可加载的各种类,应用程序根据数据包标识号可以自动获取到要加载的jar数据包,并加载其中的类,实现将应用程序中不存在的逻辑运算编码动态加载到应用系统中。
步骤S203:调用所指定的系统接口初始化逻辑运算编码,获取逻辑运算的输出结果信息。
调用接口并初始化逻辑运算编码,使加载到应用系统中的逻辑运算编码可以调用,并可应用于相应的业务逻辑。
步骤S204:根据jar数据包中包含的所定义的变量组生成可供应用系统调用的每个输入参数对应的输入QL变量,以及根据所述逻辑运算输出结果信息生成每个输出参数对应的输出QL变量。
由于jar数据包中包括的逻辑运算编码,在逻辑运算编码加载后,根据逻辑运算编码中包括的输入参数生成输入QL变量,当输入参数有多个时,相应的生成的输入QL变量也有多个;根据其中包括的输出参数生成相应的输出QL变量,当输出参数有多个时,相应的生成的输出QL变量也有多个。沿用上边的例子,输入QL变量用于输入采集的用户的登陆行为数据,对应的输出QL变量对应判断出的用户是否异地登陆的分析结果;输入QL变量用于输入采集的用户的业务操作行为数据,对应的输出QL变量对应判断出的用户操作行为是否为恶意行为的分析结果。
该过程将打包好的jar数据包上传到应用系统中,然后对该数据包中的运算逻辑编码进行加载,加载过程中,会通过指定的接口分析该逻辑运算的结果,运算结果可有多个。然后将每一个运算结果自动生成一个输出QL变量提供给脚本系统使用。
如图5所示为逻辑模块的运用过程,该过程包括下列步骤:
步骤S301:监控应用系统中的用户行为,获取作为待更新业务逻辑输入参数的用户行为数据。
沿用上班的例子,当待更新业务逻辑为判断用户的行为是否安全时,应用系统监控并获取各个用户的登陆行为数据和/或业务操作行为数据,包括当前登录的IP地址,登录的账号ID,登录的UMID,登录时间、地点、方式等,以及信息浏览、信息收藏、拍下商品、支付操作等。获取这些用户的登陆行为数据和/或业务操作行为数据,可用于后续的用户否异地登陆,操作行为是否为恶意行为等的判断,从而判断出用户的行为是否安全。
其中,判断用户是否有恶意行为是一个比较复杂的,一般需要分析大量的恶意用户的行为数据来帮助判断,而对恶意用户行为数据的分析则可以通过数据挖掘机器学习来确定计算机算法来实现的,例如贝叶斯,决策树,支持向量机等等。
步骤S302:调用生成的输入QL变量,将获取到的用户行为数据作为输入QL变量的输入数据。
调用生成的QL变量,将获取到的用户行为数据用户的登陆行为数据和/或业务操作行为数据,作为对应的输入Ql变量的值输入。
步骤S303:执行加载后的逻辑运算编码,完成业务逻辑运算。
逻辑预算编码的运算逻辑可以使上述挖掘出的用户行为数据的分析算法,通过执行逻辑运算编码实现通过挖掘出的分析算法分析用户行为数据。
沿用上边的例子,可以通过用户登陆行为分析算法分析用户是否异地登陆,通过恶意行为分析算法分析用户是否有恶意行为等。
步骤S304:调用输出QL变量输出对用户行为数据的分析结果。
具体的在执行输出QL变量过程中获取加载后的所述逻辑运算编码的逻辑运算结果作为输出数据,得到所述待更新业务逻辑所需要的输出参数,作为对所述用户行为数据的分析结果。
沿用上边的例子,可以调用是否异地登陆分析算法对应的输出QL变量输出是否异地登陆的分析结果,可以调用用户是否有恶意行为的分析算法对应的输出QL变量输出用户是否有恶意行为的分析结果。
该过程中,系统调用相关业务逻辑前,先准备好相关的输入QL变量的输入数据,当应用系统获知有该输入QL变量的输入数据通过接口输入时,调用相应的业务逻辑,执行业务逻辑运算,并调用相应的输出QL变量输出结果。
图6所示为上述逻辑模块更新实现装置的一种具体结构布置示例图,包括:开发模块10、数据上传模块20、加载模块30、执行模块40、信息收集模块50、脚本运行模块60和规则运行模块70。
其中,开发开发模块10、数据上传模块20、加载模块30、执行模块40的功能和作用参见对图1所示装置的描述,其中,数据上传模块20负责jar数据包文件和配置数据文件的上传和管理工作;加载模块30通过人工配置和加载上传的jar数据包,并提供给脚本进行运行模块60和规则运行模块70进行逻辑运算;信息收集模块50收集应用系统需要收集的用户行为数据;脚本运行模块60对信息进行初加工;规则运行模块70对信息及脚本运行期加工后的信息进行判断筛选;执行模块40针对规则运行模块70的运行结果执行相应操作。
本发明实施例提供的应用系统的逻辑模块更新实现方法及装置,通过将复杂运算逻辑在线下用java工程开发后打包并上传到应用系统中。在加载过程中将自动生成的一段该运算逻辑单元的调用脚本(QL变量脚本),并注入到应用系统中实现快捷部署。从而更方便的将复杂运算逻辑通过脚本动态的部署到系统中,将jar数据包的动态部署方式运用到脚本中使得基于脚本的系统更加灵活和计算方便。避免了传统的将运算算法本身固化到程序代码当中,然后通过用户配置各种各样的参数来实现数据挖掘流程的实现方式所存在的需要重新发布系统的问题。
上述说明示出并描述了本发明的优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权力要求的保护范围内。

Claims (11)

1.一种应用系统的逻辑模块更新实现方法,其特征在于,包括:
根据待更新业务逻辑所需要的参数信息和运算逻辑,定义逻辑运算变量组,并根据指定的系统接口编写运算逻辑编码;
将编写的所述逻辑运算编码打包成jar数据包,上传至应用系统的数据库中选定的存储位置处;
从数据库中加载上传的所述jar数据包到应用系统中,通过所指定的系统接口初始化所述逻辑运算编码,获取逻辑运算的输出结果信息,生成可供应用系统调用的查询语言QL变量。
2.如权利要求1所述的方法,其特征在于,所述根据待更新业务逻辑所需要的参数信息和运算逻辑,定义逻辑运算变量组,并根据指定的系统接口编写运算逻辑编码,具体包括:
根据待更新业务逻辑所需要的输入参数,定义逻辑运算变量组;
根据指定的系统接口的要求,确定与待更新业务逻辑所需要的输出参数对应的逻辑运算输出结果信息;
根据输入参数和输出参数之间的运算逻辑、所述变量组和所述输出结果信息,编写运算逻辑编码。
3.如权利要求2所述的方法,其特征在于,所述从数据库中加载上传的所述jar数据包到应用系统中,具体包括:
根据上传所述jar数据包时分配给所述jar数据包的数据包标识号从数据库中选定的存储位置处获取所述jar数据包,加载所述jar数据包中的类并调用所指定的系统接口初始化所述逻辑运算编码。
4.如权利要求2或3所述的方法,其特征在于,所述生成可供应用系统调用的QL变量,具体包括:
根据所述变量组生成可供应用系统调用的每个输入参数对应的输入QL变量,以及根据所述逻辑运算输出结果信息生成每个输出参数对应的输出QL变量。
5.如权利要求4所述的方法,其特征在于,所述生成可供应用系统调用的QL变量之后,还包括:
监控应用系统中的用户行为,获取作为所述待更新业务逻辑输入参数的用户行为数据;
调用生成的输入QL变量,将获取到的所述用户行为数据作为输入QL变量的输入数据,执行加载后的所述逻辑运算编码,并调用输出QL变量,在执行输出QL变量过程中获取加载后的所述逻辑运算编码的逻辑运算结果作为输出数据,得到所述待更新业务逻辑所需要的输出参数,作为对所述用户行为数据的分析结果。
6.如权利要求5所述的方法,其特征在于,所述用户行为数据为用户登陆行为数据,相应的,所述对所述用户行为数据的分析结果是否异地登陆;
所述用户行为数据为拍下商品操作和/或付款操作,相应的,所述对所述用户行为数据的分析结果是否为恶意操作行为。
7.一种应用系统的逻辑模块更新实现装置,其特征在于,包括:
开发模块,用于根据待更新业务逻辑所需要的参数信息和运算逻辑,定义逻辑运算变量组并根据指定的系统接口编写运算逻辑编码;
数据上传模块,用于将编写的所述逻辑运算编码打包成jar数据包,上传至应用系统的数据库中选定的存储位置处;
加载模块,用于从数据库中加载上传的所述jar数据包到应用系统中,并通过所指定的系统接口初始化所述逻辑运算编码获取逻辑运算的输出结果信息,生成可供应用系统调用的查询语言QL变量。
8.如权利要求7所述的装置,其特征在于,所述开发模块,具体用于:
根据待更新业务逻辑所需要的输入参数,定义逻辑运算变量组;根据指定的系统接口的要求,确定与待更新业务逻辑所需要的输出参数对应的逻辑运算输出结果信息;根据输入参数和输出参数之间的运算逻辑、所述变量组和所述输出结果信息,编写运算逻辑编码。
9.如权利要求8所述的装置,其特征在于,所述加载模块,具体用于:
根据上传所述jar数据包时分配给所述jar数据包的数据包标识号从数据库中选定的存储位置处获取所述jar数据包,加载所述jar数据包中的类并调用所指定的系统接口初始化所述逻辑运算编码。
10.如权利要求8或9所述的装置,其特征在于,所述加载模块,具体用于:
根据所述变量组生成可供应用系统调用的每个输入参数对应的输入QL变量,以及根据所述逻辑运算输出结果信息生成每个输出参数对应的输出QL变量。
11.如权利要求10所述的装置,其特征在于,还包括:
执行模块,用于在所述生成可供应用系统调用的QL变量之后,监控应用系统中的用户行为,获取作为所述待更新业务逻辑输入参数的用户行为数据;调用生成的QL变量,将获取到的所述用户行为数据作为输入QL变量的输入数据,执行加载后的所述逻辑运算编码,并调用输出QL变量,在执行输出QL变量过程中获取加载后的所述逻辑运算编码的逻辑运算结果作为输出数据,得到所述待更新业务逻辑所需要的输出参数,作为对所述用户行为数据的分析结果。
CN201310221388.3A 2013-06-05 2013-06-05 应用系统的逻辑模块更新实现方法及装置 Active CN104216729B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310221388.3A CN104216729B (zh) 2013-06-05 2013-06-05 应用系统的逻辑模块更新实现方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310221388.3A CN104216729B (zh) 2013-06-05 2013-06-05 应用系统的逻辑模块更新实现方法及装置

Publications (2)

Publication Number Publication Date
CN104216729A CN104216729A (zh) 2014-12-17
CN104216729B true CN104216729B (zh) 2017-10-13

Family

ID=52098261

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310221388.3A Active CN104216729B (zh) 2013-06-05 2013-06-05 应用系统的逻辑模块更新实现方法及装置

Country Status (1)

Country Link
CN (1) CN104216729B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113590166B (zh) * 2021-08-02 2024-03-26 腾讯数码(深圳)有限公司 应用程序的更新方法、装置以及计算机可读存储介质
CN117608236B (zh) * 2024-01-24 2024-04-09 长城数字能源(西安)科技有限公司 集成方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1091295A2 (en) * 1999-09-30 2001-04-11 Kabushiki Kaisha Toshiba Data management system using a plurality of data operation modules
CN102073512A (zh) * 2009-11-23 2011-05-25 阿里巴巴集团控股有限公司 一种java集群应用系统代码装载及升级装置和方法
CN102087599A (zh) * 2011-02-24 2011-06-08 北京中电普华信息技术有限公司 一种基于J2EE的Web应用系统开发方法及装置
CN103123593A (zh) * 2011-11-18 2013-05-29 腾讯科技(深圳)有限公司 Java应用服务器及处理Web业务的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1091295A2 (en) * 1999-09-30 2001-04-11 Kabushiki Kaisha Toshiba Data management system using a plurality of data operation modules
CN102073512A (zh) * 2009-11-23 2011-05-25 阿里巴巴集团控股有限公司 一种java集群应用系统代码装载及升级装置和方法
CN102087599A (zh) * 2011-02-24 2011-06-08 北京中电普华信息技术有限公司 一种基于J2EE的Web应用系统开发方法及装置
CN103123593A (zh) * 2011-11-18 2013-05-29 腾讯科技(深圳)有限公司 Java应用服务器及处理Web业务的方法

Also Published As

Publication number Publication date
CN104216729A (zh) 2014-12-17

Similar Documents

Publication Publication Date Title
CN108846630B (zh) 一种资源控制系统及方法
CN1886705B (zh) 高效实现及评估状态机和可编程有限状态自动机的方法和设备
CN108804630B (zh) 一种面向行业应用的大数据智能分析服务系统
CN104423968B (zh) 设计业务逻辑的方法、执行其的服务器和储存媒介
AU2017404119A1 (en) Random forest model training method, electronic apparatus and storage medium
CN102693154B (zh) 动态惰性类型系统
CN107656729A (zh) 列表视图的更新装置、方法及计算机可读存储介质
CN103176892A (zh) 一种页面监控方法及系统
CN110825412B (zh) 基于LabVIEW的控制器程序的刷写系统及方法
CN108492005A (zh) 项目数据处理方法、装置、计算机设备和存储介质
CN104216729B (zh) 应用系统的逻辑模块更新实现方法及装置
CN110704044A (zh) 一种可视化编程系统
CN109685545A (zh) 待发放虚拟网络资源预估方法、装置及电子设备
CN110298007A (zh) 用户行为统计方法、装置、电子设备及计算机可读存储介质
CN108134812A (zh) 数据处理方法和装置
CN113867600A (zh) 处理流式数据的开发方法、装置和计算机设备
CN111931189A (zh) Api接口转用风险检测方法、装置和api服务系统
CN114707430A (zh) 一种基于多用户加密的联邦学习可视化系统与方法
CN107479866A (zh) 基于重构技术实现开放终端应用数据与功能的方法
CN107562428A (zh) 基于规则的自适应软件界面布局方法及系统
CN113360300A (zh) 接口调用链路生成方法、装置、设备及可读存储介质
CN114912958A (zh) 坐席外呼方法、装置、计算机设备及存储介质
CN109902831B (zh) 业务决策处理方法以及装置
CN110866607B (zh) 一种基于机器学习的渗透行为预测算法
CN111290855A (zh) 分布式环境中多gpu服务器的gpu卡管理方法、系统及存储介质

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