1、补丁文件2个,src/java/org/apache/solr/search/DocSet.java,src/java/org/apache/solr/search/QueryResultKey.java。
2、把 solr-memcache 安装使用上。把 apapache-solr-memcache-1.3.0.jar 和依赖的 memcached-2.2.jar、spy-2.4.jar 放到 solr项目的/lib目录下。
3、修改 solr.home/conf/solrconfig.xml 配置告诉 solr 怎么使用 Memcached 实现的 Cache。这次实现的目的主要用在 queryresultCache 上。在 solrconfig.xml 的 query 元素内找到 queryresultCache,把原来的注释掉,改如下的:
<!--
MemcachedCache params:
memcachedHosts (required), "," split.
name (optional) no default.
expTime (optional) default 1800 s (= 30 minute)
defaultPort (optional) default 11211
keyPrefix (optional) default ""
-->
<queryResultCache
class="solr.MemcachedCache"
memcachedHosts="192.168.0.100,192.168.0.101:1234,192.168.0.103"
expTime="21600"
defaultPort="11511"
keyPrefix=""/>
//再在 query 元素内(就在 queryResultCache 下面不远处可以找到类似的 listener )新增加如下内容:
<listener event="newSearcher" class="solr.MemcachedCache" />
<listener event="firstSearcher" class="solr.MemcachedCache" />
参考朋友的blog:http://blog.chenlb.com/2009/06/implement-solr-cache-with-memcached.html,表示感谢!!!
分享到:
相关推荐
此外,还可以使用Memcached等外部工具替代Solr自带的缓存方案,以实现分布式缓存的支持。 #### 三、分布式搜索与索引 随着数据规模的增长,单机部署往往难以满足大规模搜索的需求。为此,Solr提供了分布式搜索与...
Memcached是一个分布式内存对象缓存系统,用于加速动态Web应用程序。在PHP中,Memcached扩展允许你利用内存缓存来存储和检索数据,从而提高性能。同样,你需要下载memcache.dll文件,将其放在PHP的扩展目录下,并在...
本文将详细讨论PHP4.3版本中与mongo、memcache、solr和redis相关的DLL扩展包及其配置方法。 首先,PHP4.3是PHP的一个较老版本,发布于2002年,支持多种数据库和缓存技术。MongoDB是一个NoSQL数据库,它提供了高性能...
本书涵盖以下激动人心的功能:使用Django构建实际的实际Web应用程序将Django与Redis,Celery,Solr和Memcached等其他技术结合使用开发可插拔的Django应用程序创建高级功能,优化代码并使用缓存框架将国际化添加到...
随着压力增大,引入了memcached缓存单行数据,然后通过增加从库来分散查询负载。然而,随着数据量的持续增长,主库的写压力变得不可忽视。 为了解决这个问题,又拍网采用了数据库拆分策略。数据库拆分分为垂直拆分...
- **缓存服务器安装**:包括安装Memcached/Redis等,这一步骤是实现分布式缓存的基础。 以上技术点不仅覆盖了项目的具体实施细节,还涉及到了电子商务系统开发中的常见问题和解决方案。这些知识对于理解和实践电子...
随着对性能和效率的追求,NoSQL数据库如Redis和Memcached,以及全文搜索引擎如Solr和Elasticsearch被广泛应用。然而,这些服务与关系型数据库如MySQL之间的实时数据同步成为一个挑战。阿里巴巴开源的Canal框架就是...
此外,还涉及了商品详情页的缓存策略,如使用Redis或Memcached来缓存商品详情,减少数据库查询,提高页面加载速度。 通过这一系列视频教程,开发者可以全面地了解和掌握一个电商系统从无到有的开发过程,包括前后端...
缓存是提升网站性能的关键,包括页面缓存、数据库缓存(如Memcached、Redis)等。书中阐述了缓存的实现方式、缓存一致性问题以及缓存失效策略。 五、搜索引擎与全文搜索 大型网站通常需要强大的搜索功能,这涉及到...
1. 熟练使用Redis、Memcached等NoSQL解决方案,精通其在分布式系统中的应用,包括Redis集群搭建、数据备份、性能调优和迁移。 2. 对Redis的底层模型、数据持久化机制、多数据类型的应用、高可用机制有深入理解,熟练...
Spring Security和CAS可以用于实现单点登录(SSO),Ehcache和Memcached可用于缓存会话数据,Shiro则提供了一套全面的安全管理框架。 消息队列如RabbitMQ、RocketMQ和Kafka在处理异步通信和解耦系统方面起着重要...
Ehcache作为备选方案,提供了一种轻量级的缓存解决方案,而Memcached虽然使用率较低,但在某些特定场景下仍有其价值。 全文检索技术中,Solr、Elasticsearch和Lucene占据了主导地位。Solr和Elasticsearch的高使用率...
- 缓存技术包括本地缓存、客户端缓存、服务端缓存(如Web缓存、Memcached、Redis、Tair),以及缓存回收策略。 - 消息队列如RabbitMQ、RocketMQ、ActiveMQ、Kafka、Redis消息推送和ZeroMQ。 - 定时调度包括单机与...
在面对海量数据时,引入缓存机制如Redis或Memcached,能够快速响应高频读取请求,减轻数据库压力。缓存分为两种主要类型:水平拆分和垂直拆分。水平拆分是将同一表的数据分散到多个数据库中,而垂直拆分则是根据业务...
- **缓存技术**:为了提高数据访问速度,可以引入缓存技术,如Redis、Memcached等,用于存储高频访问的数据。 - **索引技术**:通过建立索引来优化数据检索过程,提高查询效率。例如,使用Solr或Elasticsearch等搜索...
- Spring Boot 缓存,包括redis、ehcache、spring-cache、memcached、使用redis实现session共享 等。 - springboot-templates - Spring Boot 模板,包括thymeleaf、freemarker、jsp、表单校验 等。 - ...
3. **缓存策略**:为了减少数据库访问压力,使用缓存技术(如Redis、Memcached)存储热点数据,实现快速响应。合理设计缓存策略,如LRU(最近最少使用)、LFU(最不经常使用)等,能显著提升系统性能。 4. **数据库...
使用Redis、Memcached等内存数据库作为缓存层,可以显著减少对后端数据库的访问,从而降低延迟。缓存策略包括LRU(Least Recently Used)、LFU(Least Frequently Used)等,以及基于时间或访问计数的自动过期机制。...
9. 缓存策略:为了提高响应速度,平台可能采用了缓存机制,如Redis或Memcached,缓存常用数据或结果,减少数据库访问,提升用户体验。 10. 持续集成/持续部署(CI/CD):开发过程中,可能使用Jenkins、GitLab CI/CD或...