【技术实现步骤摘要】
基于JVM的Java应用系统预热方法及系统
本专利技术涉及JAVA应用系统
,尤其涉及一种基于JVM的Java应用系统预热方法及系统。
技术介绍
Java应用在Java虚拟机JVM(JavaVirtualMachine)之上运行时,由于引入了Just-in-Time(JIT)即时编译技术,程序代码第一次被执行时才会进行编译,并且当虚拟机发现某个方法或代码块运行的热别频繁时会把这些代码认定为“热点代码”,为提高这些代码执行效率,虚拟机会将这些代码编译成与本地平台相关的机器码并进行各种层次的优化,因此Java应用程序在运行一段时间后性能会达到最佳状态。JIT机制不可避免的导致了Java应用重启后会有一段预热过程,在预热阶段接入的交易处理响应时间会显著增加,降低系统处理能力。对于商业银行处理借记卡消费、快捷支付、联机代理交易、本外币转账汇划和借记卡转账等高并发交易的系统来说,应用版本发布、服务器宕机重启后的预热过程会使系统处理能力降低,将会对业务产生不可控的影响。
技术实现思路
本专利技术的一个目 ...
【技术保护点】
1.一种基于JVM的Java应用系统预热方法,其特征在于,包括:/n将接收的任务请求报文通过通讯适配器输入请求处理栈;/n通过请求处理栈对所述任务请求报文进行框架级处理,其中,在对所述任务请求报文进行报文处理之前,对JAVA应用系统进行预热;/n将请求处理栈处理完成的任务请求报文进行业务逻辑处理。/n
【技术特征摘要】
1.一种基于JVM的Java应用系统预热方法,其特征在于,包括:
将接收的任务请求报文通过通讯适配器输入请求处理栈;
通过请求处理栈对所述任务请求报文进行框架级处理,其中,在对所述任务请求报文进行报文处理之前,对JAVA应用系统进行预热;
将请求处理栈处理完成的任务请求报文进行业务逻辑处理。
2.根据权利要求1所述的Java应用系统预热方法,其特征在于,所述对JAVA应用系统进行预热具体包括:
确定预热完成标志是否为预热完成;
若否,确定接收的任务请求报文是否达到预设阈值;
若是,启动异步进程向注册中心发送注册信息以完成JAVA应用系统预热。
3.根据权利要求2所述的Java应用系统预热方法,其特征在于,所述启动异步进程向注册中心发送注册信息以完成JAVA应用系统预热具体包括:
获取异步进程信号量;
形成注册信息并发送至注册中心以修改注册中心服务目录JAVA应用系统的服务权重;
释放信号量。
4.根据权利要求3所述的Java应用系统预热方法,其特征在于,所述形成注册信息并发送至注册中心以修改注册中心服务目录的服务权重具体包括:
确定注册中心服务目录的最后修改时间是否为空;
若是,将当前时间作为服务目录的最后修改时间,并修改服务目录JAVA应用系统的服务权重;若否,确定当前时间是否大于最后修改时间加上最后修改时间后调用服务次数所需的时间;
若是,将当前时间作为服务目录的最后修改时间,并修改服务目录JAVA应用系统的服务权重,若否,认为JAVA应用系统预热完成。
5.根据权利要求2所述的Java应用系统预热方法,其特征在于,进一步包括:
若服务目录JAVA应用系统的服务权重修改失败;
确定修改失败的次数是否已经达到预设失败次数阈值,若是,将预热完成标志修改为预热完成;
若否,每隔预设时间间隔重新向注册中心发送注册信息以修改服务目录JAVA应用系统的服务权重。
6.根据权利要求2所述的Java应用系统预热方法,其特征在于,在对所述任务请求报文进行报文处理之前,通过请求处理栈对所述任务请求报文进行框架级处理具体包括:
依次通过接入扩展处理器、服务安全头处理器、流水查询处理器、一致性保护处理器、渠道流水响应处理器和数据服务转换处理器对所述任务请求报文进行框架级处理。
7.根据权利要求2所述的Java应用系统预热方法,其特征在于,所述对所述任务请求报文进行报文处理具体包括:
依次通过渠道流水请求处理器、国际化处理器、异常处理器、日志处理器、外呼流水查询处理器、同步冲正处理器、接入流控扩展处...
【专利技术属性】
技术研发人员:卞嘉骏,唐成山,丁陈飞,陈军,
申请(专利权)人:中国建设银行股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。