在Java中缓存Web应用程序

5
  • 使用MySQL缓存Java Web应用程序的更好方法是什么?以提高性能。
  • 最佳技术是什么?
  • 最好在应用程序级别还是数据库级别上进行?

我是新手,如果有错误请见谅。


MySQL或数据库:这是必须的要求吗? - PeterMmm
一个Web应用程序如何在没有数据库的情况下存在?是的,它可以存在,但不会太复杂,只是一些简单的东西。 - Denees
请参见https://dev59.com/LnRB5IYBdhLWcg3wLUq3,了解如何实现缓存技术的Java Web应用程序。 - alf
@Denis我(错误地)理解你的Web应用程序使用数据库缓存请求。 - PeterMmm
@PeterMmm 我现在只是使用数据库存储数据。 - Denees
4个回答

7

针对数据库层面和应用程序层面都有一些性能优化的方法。

以下是针对数据库层面的建议:

  1. 查询优化
  2. 在频繁使用的数据上创建索引。

对于一些ORM框架,比如hibernate,它也提供了一些机制来在主要级别和次要级别缓存输出。

以下是针对应用程序层面的一些选项:

1.EHCache 2. Memcached

JCS

这里是一个完整的基于Java的缓存框架列表:

java-caching-system

通过谷歌搜索,你可以找到很多其他的选项。对于用户界面层面,有很多方面需要改进,比如:

  1. 正确使用HTTP头部
  2. 减少服务器访问次数
  3. 加载JavaScript文件的方式
  4. 加载CSS文件的方式
  5. 使用CDN服务器

雅虎有一个非常好的博客介绍这些内容:YSLOW from YAHOO。如果你处于开发的早期阶段,我建议不要采用它们,因为它们会导致过早的优化,并可能引起许多问题。


谢谢Umesh,现在很清楚了。像往常一样快速而清晰。 :) - Denees

4

为什么不看一下以下链接,这些链接可以帮助你。

文章1

文章2


3

为此目的存在框架,Ehcache是其中之一。您可以在此了解如何使用它: ehcache


2
很遗憾,这个问题太宽泛了(这个话题已经有书籍了,所以它实际上符合FAQ对于离题的定义)——因此很可能会很快被关闭。
简而言之,有很多Java缓存解决方案,例如Guava和ehcache。
最好的三种技术是:
1.分析
2.分析
3.在生产中进行分析,确保您的更改在实际应用中有效。
在这些层面上,决策都取决于分析数据。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接