测试环境:
P4 2.4、768M内存 、windowsXP SP2
Lucene2.1,Tomcat5.5,EHcahce1.2.4,大约500M index数据
Cache分两层,对搜索结果和高亮处理后的某页数据缓存,结果页面每页显示10个搜索结果。
对同一个词进行搜索,两次测试都是在Tomcat首次启动后进行测试。一个测试完毕,重起Tomcat再进行第二组测试。
测试结果:(秒)
无Cache测试结果
第一次搜索 第二次搜索
搜索耗时 高亮耗时 总耗时 搜索耗时 高亮耗时 总耗时
第1页显示 0.453 0.203 0.671 0.015 0.016 0.031
第2页显示 0.015 0.469 0.484 0.015 0.032 0.047
第13页显示 0.016 0.39 0.406 0.016 0.031 0.047
有Cache测试结果
第一次搜索 第二次搜索
搜索耗时 高亮耗时 总耗时 搜索耗时 高亮耗时 总耗时
第1页显示 0.391 0.203 0.594 0 0 0
第2页显示 0 0.437 0.437 0 0 0
第13页显示 0 0.625 0.625 0 0 0
结论:
- Lucene本身对搜索有Cache,因此第一次搜索速度较慢,以后会很快。
- 增加对搜索结果Cache,速度提高不明显。验证了《Lucene in Action》 对此的说法。
- 对高亮理结果进行缓存效果较明显。
相关推荐
这个“lucene-3.0.1”版本代表了Lucene在2009年的一个重要里程碑,它提供了强大的文本检索功能,被广泛应用于各种信息检索系统和大数据分析平台。本文将围绕“lucene-3.0.1”库和源代码,深入探讨其核心概念、主要...
**Lucene 框架详解** Lucene 是一个开源的全文检索库,由 Apache 软件基金会开发,主要用于在 Java 应用程序中实现高效、可扩展的...该组件可能包括示例代码、测试用例和详细说明,帮助我们更好地理解和使用 Lucene。
本篇硕士论文“基于ASP.NET搜索引擎设计与实现”主要探讨了如何利用ASP.NET技术来构建一个高效、实用的搜索引擎系统。 一、搜索引擎基础 搜索引擎的核心功能包括信息采集、信息预处理(如分词、去噪)、索引构建、...
总的来说,基于ASP.NET的BBS开发是一项涉及数据库设计、前端开发、安全策略、用户体验等多个方面的综合性任务,需要开发者具备扎实的编程基础和良好的软件工程思维。通过不断学习和实践,开发者可以构建出高效、稳定...
【基于C#的网上图书馆】项目是一个利用C#编程语言构建的在线图书管理系统,它旨在为用户提供便捷的图书浏览和查询功能,同时可能包含了数据库管理的实现,以便存储和检索图书信息。C#是一种面向对象的、现代的编程...
ASP.NET提供了多种缓存机制,如Output Cache、Data Cache和HttpRuntime.Cache,用于减少数据库查询和页面渲染时间。 7. **多线程和并发**: 大型搜索引擎必须处理大量并发请求。ASP.NET支持多线程编程,通过...
这是一个基于Java技术栈开发的小说网站项目,使用了SpringCloud框架进行微服务架构设计,集成Elasticsearch(ES)作为搜索引擎,Redis作为缓存服务,以及Echarts用于数据可视化。以下将详细介绍这些关键技术及其在...
综上所述,Apache Solr是一款功能强大、高度可定制的企业级搜索引擎,它不仅可以高效地处理海量数据的搜索需求,还具备灵活的配置选项和丰富的API支持,使得开发者能够轻松集成到各种应用场景中。
分布式检索是一种在大规模数据集上实现高效搜索的技术,它通过将数据分布在多个节点上,使得检索操作能够并行处理,从而提高查询速度和系统吞吐量。在标题中提到的"分布式检索后台面板"可能是一个用于管理和配置...
Solr基于Apache Lucene,它提供了更高级的功能,如集群、分布式搜索、复制和负载均衡,使得Solr更适合大规模、高并发的搜索应用。 1.2.2 Schema(模式) Schema是Solr的核心配置之一,用于定义索引字段、数据类型...
1. Spring:这是一个全面的Java应用开发框架,提供了依赖注入(DI)和面向切面编程(AOP)功能,能够管理对象的生命周期和协作关系,使得代码更加解耦和易于测试。 2. SpringMVC:作为Spring框架的一部分,它是处理...
它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。BoneCP很小,只有四十几K(运行时需要slf4j和guava的支持,这二者加起来就不小了),而相比之下 C3P0 要六百多K。 异步...
它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。BoneCP很小,只有四十几K(运行时需要slf4j和guava的支持,这二者加起来就不小了),而相比之下 C3P0 要六百多K。 异步...
它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。BoneCP很小,只有四十几K(运行时需要slf4j和guava的支持,这二者加起来就不小了),而相比之下 C3P0 要六百多K。 异步...
它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。BoneCP很小,只有四十几K(运行时需要slf4j和guava的支持,这二者加起来就不小了),而相比之下 C3P0 要六百多K。 异步...
它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。BoneCP很小,只有四十几K(运行时需要slf4j和guava的支持,这二者加起来就不小了),而相比之下 C3P0 要六百多K。 异步...
它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。BoneCP很小,只有四十几K(运行时需要slf4j和guava的支持,这二者加起来就不小了),而相比之下 C3P0 要六百多K。 异步...
它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。BoneCP很小,只有四十几K(运行时需要slf4j和guava的支持,这二者加起来就不小了),而相比之下 C3P0 要六百多K。 异步...