Java 如何提高加载显示35个以上查询检索到的计数的网页的性能

Java 如何提高加载显示35个以上查询检索到的计数的网页的性能,java,mysql,hibernate,spring-mvc,jdbc,Java,Mysql,Hibernate,Spring Mvc,Jdbc,我的网页上显示了一个仪表板,其中显示了与招聘大会相关的不同统计数据。它显示了使用mysql查询检索到的35个以上的计数。目前,加载页面大约需要12秒。我尝试了以下方法来提高性能,但所有方法都需要相同的时间来加载页面 使用SpringMVC框架,我创建了35个方法来分别检索不同的计数数据 所有查询都写在存储过程中,并在DB级别运行。编写一个Java类来调用此存储过程并检索所有计数 使用单个JDBC连接编写一个单独的Java类,以使用mySQL查询检索所有计数 让我知道一种更好的方法来处理这种情况。

我的网页上显示了一个仪表板,其中显示了与招聘大会相关的不同统计数据。它显示了使用mysql查询检索到的35个以上的计数。目前,加载页面大约需要12秒。我尝试了以下方法来提高性能,但所有方法都需要相同的时间来加载页面

  • 使用SpringMVC框架,我创建了35个方法来分别检索不同的计数数据

  • 所有查询都写在存储过程中,并在DB级别运行。编写一个Java类来调用此存储过程并检索所有计数

  • 使用单个JDBC连接编写一个单独的Java类,以使用mySQL查询检索所有计数

  • 让我知道一种更好的方法来处理这种情况。

    你能试试下面的方法吗 1.创建35个dao方法,并在服务类中以异步方式调用它们。可以从控制器调用服务类。这里我假设下面是建筑 控制器>服务>DAO


    在这里,您应该在控制器中有一个异步调用这些服务方法的方法。如果您使用的是spring,那么spring内置了对异步的支持。如果您要进行35次调用,我希望有一种方法可以将其组合成更少的SQL查询。否则,请确保使用准备好的语句来提高性能。您还可以将这些查询的结果缓存一段时间(5-10分钟),而不是每次都执行查询;这取决于数据更改的频率。

    这是一个广泛的问题,可以吸引更多的意见,可以从后端的角度查看数据库级别的正确索引,也可以查看页面接受请求的方式,无论是缩放还是单节点。。还有很多其他的方法。