有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

mysql Java在servlet上下文中存储与数据库查找

我们正在用Java构建一个定制CMS

当主servlet接收到请求时,我们执行查找以查看哪个条目与请求路径关联,然后向用户显示该条目

我们想知道这三种方法中哪一种在性能方面最快/最便宜:

  1. 在启动时存储servlet上下文中所有条目的映射(键 =path,value=entry),然后在收到请求时根据路径获取条目

  2. 在启动时将所有条目的数组列表存储在servlet上下文中,然后在列表上迭代以在收到请求时根据路径获取条目

  3. 执行数据库查找以获取条目

为了让您了解更多的内容,我们目前有大约100个条目,预计将增长到1000个左右。 DB与web应用程序共享,我们希望确保web应用程序的最大可用性。同时,搜索引擎优化是我们的#1流量来源,因此保持快速加载时间对我们来说非常重要

如果您对此有任何想法,我们将不胜感激


共 (1) 个答案

  1. # 1 楼答案

    内存内查找总是比数据库查找快。如果数据的大小不大,并且加载后数据没有变化,那么将其存储在映射中是一个不错的选择(在列表上迭代是个坏主意)。如果您的服务器有空闲的内存,那么内存中有几MB的数据将不是问题