本发明属于预热应用,具体为一种具备预热应用功能的系统及方法。
背景技术:
1、系统应用预热目前关注的应用更多的是指后端服务,会提供接口给外部使用,提升应用对外响应的速度才是重点,而且预热一般是会减低启动速度,虽然可以通过异步来实现,但总归会占资源,所以总是不会提升启动速度的,预热的目的更多的是通过多做一些或者提前做一些预热的动作,减少用户访问应用的响应时间,提升用户的体验才是最终目的。
2、为在分布式系统中,应用的响应速度往往受到多个因素的影响,其中包括网络延迟、数据库访问速度和对象初始化等因素,这些因素往往导致用户等待时间过长,从而降低用户体验和满意度,为了解决这个问题,现有技术中已经提出了一些预热应用的方法,如缓存预热和对象初始化预热等,但是,现有技术中仍存在着一些问题,如预热效果不稳定、预热时间过长和对业务正常运行造成影响等。
技术实现思路
1、本发明旨在提供一种稳定、高效的预热应用的方法和系统,以提升服务的使用体验。
2、本发明采用的技术方案如下:一种具备预热应用功能的系统,包括:
3、数据分析和建模模块,对应用的数据和对象进行分析和建模,找出热点数据和对象,以及它们的关系和访问模式信息。
4、应用程序运行模块,用于应用程序的运行,实现业务功能和工具包的运行。
5、预热策略和时机选择模块,结合热点数据和对象的特点,智能地选择合适的预热策略和预热时机,以提高预热效果。
6、预热程序运行模块,加载热点数据到中间件,提前调用业务功能接口。
7、监控模块,通过监控预热效果和应用性能指标,及时发现和解决问题,提高系统的稳定性和可靠性。
8、所述数据分析和建模模块与应用程序运行模块之间信号连接,所述数据分析和建模模块与预热策略和时机选择模块之间信号连接,所述应用程序运行模块与预热程序运行模块之间双向信号连接,所述数据分析和建模模块与预热程序运行模块之间信号连接,所述数据分析和建模模块与监控模块之间信号连接,所述预热程序运行模块与监控模块之间信号连接。
9、进一步的,所述应用程序运行模块包括业务功能模块与预热模块sdk,所述预热程序运行模块包括异步预热模块。
10、进一步的,所述业务功能模块用于实现应用程序运行实现的业务功能,所述预热模块sdk,用于提供提供完整的开发框架和工具集。
11、进一步的,所述预热模块sdk与异步预热模块之间双向信号连接。
12、一种预热应用以提升服务的使用体验的方法,其特征在于,应用于上述中任意一项所述的一种具备预热应用功能的系统中,包括以下步骤:
13、s1、收集数据。
14、s2、数据清洗和准备。
15、s3、数据分析。
16、s4、模型构建。
17、s5、模型评估和优化。
18、s6、部署和应用。
19、进一步的,根据s1中的操作步骤,所述收集数据由应用程序运行模块提供应用所在操作系统的cpu、内存系统资源使用情况、应用请求量、响应时间、错误率、资源使用情况、应用依赖组件的如mysql、redis中间件的使用情况与可选的收集应用系统业务上的一些业务逻辑作为针对性的预热。
20、进一步的,根据s1中的操作步骤,所述收集数据同步发送给监控模块,所述模型评估和优化产生数据同步发送给监控模块。
21、进一步的,根据s3中的操作步骤,所述监控模块基于接收的数据,用于监控预热效果,随后调整预热策略,随后将预热的策略调整后作用到预热程序运行模块。
22、s301、数据分析时,借助预热策略和时机选择模块,实现识别热点数据和对象。
23、s302、借助预热策略和时机选择模块,选择热点数据和对象,进行部署和应用。
24、进一步的,根据s1中的操作步骤,所述步骤六将预热的执行代码嵌入到应用程序运行模块的应用程序中、在任意的时机执行或者独立部署一个专门预热的应用,将应用所需的缓存数据提前加载。
25、进一步的,根据s1中的操作步骤,所述步骤五进行持续迭代循环,产生数据均发送给监控模块。
26、综上所述,由于采用了上述技术方案,本发明的有益效果是:
27、(1)针对具体业务和应用场景,智能选择预热策略和时机,提高预热效果。
28、(2)通过异步预热的方式,避免对业务正常运行造成影响,提高预热效率。
29、(3)通过数据分析和建模,准确识别热点数据和对象,提高预热效果。
30、(4)通过监控和优化模块,及时发现和解决问题,提高系统的稳定性和可靠性。
1.一种具备预热应用功能的系统,其特征在于,包括:
2.如权利要求1所述的一种具备预热应用功能的系统,其特征在于:所述应用程序运行模块(2)包括业务功能模块与预热模块sdk,所述预热程序运行模块(4)包括异步预热模块。
3.如权利要求1所述的一种具备预热应用功能的系统,其特征在于:所述业务功能模块用于实现应用程序运行实现的业务功能,所述预热模块sdk,用于提供提供完整的开发框架和工具集。
4.如权利要求1所述的一种具备预热应用功能的系统,其特征在于:所述预热模块sdk与异步预热模块之间双向信号连接。
5.一种预热应用以提升服务的使用体验的方法,其特征在于,应用于权利要求1-4中任意一项所述的一种具备预热应用功能的系统中,包括以下步骤:
6.据权利要求5所述的一种预热应用以提升服务的使用体验的方法,其特征在于,包括以下步骤:根据s1中的操作步骤,所述收集数据由应用程序运行模块(2)提供应用所在操作系统的cpu、内存系统资源使用情况、应用请求量、响应时间、错误率、资源使用情况、应用依赖组件的如mysql、redis中间件的使用情况与可选的收集应用系统业务上的一些业务逻辑作为针对性的预热。
7.据权利要求5所述的一种预热应用以提升服务的使用体验的方法,其特征在于,包括以下步骤:根据s1中的操作步骤,所述收集数据同步发送给监控模块(5),所述模型评估和优化产生数据同步发送给监控模块(5)。
8.据权利要求5所述的一种预热应用以提升服务的使用体验的方法,其特征在于,包括以下步骤:根据s3中的操作步骤,所述监控模块(5)基于接收的数据,用于监控预热效果,随后调整预热策略,随后将预热的策略调整后作用到预热程序运行模块(4)。
9.据权利要求5所述的一种预热应用以提升服务的使用体验的方法,其特征在于,包括以下步骤:根据s6中的操作步骤,所述步骤六将预热的执行代码嵌入到应用程序运行模块(2)的应用程序中、在任意的时机执行或者独立部署一个专门预热的应用,将应用所需的缓存数据提前加载。
10.据权利要求5所述的一种预热应用以提升服务的使用体验的方法,其特征在于,包括以下步骤:根据s5中的操作步骤,所述步骤五进行持续迭代循环,产生数据均发送给监控模块(5)。