|
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,表示感谢!!! |
|
|