Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java AWS Lambdas中的休眠导致启动缓慢_Java_Hibernate_Aws Lambda_Hibernate Mapping - Fatal编程技术网

Java AWS Lambdas中的休眠导致启动缓慢

Java AWS Lambdas中的休眠导致启动缓慢,java,hibernate,aws-lambda,hibernate-mapping,Java,Hibernate,Aws Lambda,Hibernate Mapping,我有一些AWS Lambda函数来执行数据库CRUD操作。我有大约20个持久类。我的应用程序是基于Spring的,使用Hibernate作为ORM 分配1536MB后,我的函数从冷启动开始运行大约需要16秒。根据日志,大部分时间是Hibernate解析我的hbm.xml文件,构建LoadPlans,并通常处理元数据 因为16秒的响应时间太长了,我需要一些方法来加快速度。有没有办法推迟Hibernate的元数据解析或在编译时进行 我看了一下生成器,但它似乎是为了在运行时构建查询而设计的 分配153

我有一些AWS Lambda函数来执行数据库CRUD操作。我有大约20个持久类。我的应用程序是基于Spring的,使用Hibernate作为ORM

分配1536MB后,我的函数从冷启动开始运行大约需要16秒。根据日志,大部分时间是Hibernate解析我的
hbm.xml
文件,构建
LoadPlans
,并通常处理元数据

因为16秒的响应时间太长了,我需要一些方法来加快速度。有没有办法推迟Hibernate的元数据解析或在编译时进行

我看了一下生成器,但它似乎是为了在运行时构建查询而设计的

分配1536MB后,我的函数从冷启动开始运行大约需要16秒。根据日志,大部分时间是Hibernate解析我的hbm.xml文件、构建加载计划,以及处理元数据


不应该花那么多时间。我认为原因是另一个。可能已启用Hibernate架构验证。

使用cloudWatch触发lambda是一种解决方案,在第一次冷启动后,它将在距离上次执行约40分钟的时间内“运行”,只需为lambda设置每30-40分钟一次的触发事件。

除非默认情况下启用架构验证,否则我不会打开它。此外,如果删除数据库连接字符串,它只会在这次结束时崩溃。记住,lambda不是很强大。在我的开发机器上,该函数只需7秒钟。