摘要:
Java自动垃圾回收(Automatic Garbage Collection)是自动回收堆上不再使用的内存,new的对象在程序中没有引用指向它,就会被回收。回收的实现很多,有Reference Counting Collector/Tracing Collector/Compacting Coll 阅读全文
摘要:
近实时搜索(near-real-time)可以搜索IndexWriter还未commit的内容,介于immediate和eventual之间,在数据比较大、更新较频繁的情况下使用。本文主要来介绍下如何使用,其原理还没弄透,改天再续。本文代码基于lucene 4.10IndexReader的重建想要看... 阅读全文
摘要:
1.facet的直观认识facet:面、切面、方面。个人理解就是维度,在满足query的前提下,观察结果在各维度上的分布(一个维度下各子类的数目)。如jd上搜“手机”,得到4009个商品。其中品牌、网络、价格就是商品的维度(facet),点击某个品牌或者网络,获取更细分的结果。点击品牌小米,获得小米... 阅读全文
摘要:
消息队列两个用处:服务间解耦,缓解压力(削峰平谷),以前用过ZMQ、狼厂内部的NMQ,现在接触了java开源的kafka和RabbitMQ。目前先不求甚解,有个大概的认识。RabbitMQ的安装和入门例子见http://www.rabbitmq.com/,挺全的。安装前需要安装erlang,启动方便... 阅读全文
摘要:
该系列基于redis-2.8.18,主要记录自己的理解或者想法。redis以自己支持存储的数据结构丰富吸引了大批人,把memcached比了下去。本文就从简单基本的数据结构入手。双向链表-adlisttypedef struct listNode { struct listNode *prev... 阅读全文
摘要:
Kafka是一个分布式的消息队列,学习见Apache Kafka文档,中文翻译见Kafka分享,一个简单的入门例子见kafka代码入门实例。本文只针对自己感兴趣的点记录下。1.架构Producer/Consumer:消息的生成者和使用者。Broker:kafka server充当broker角色,起... 阅读全文
摘要:
Lucene搜索的时候就要构造查询语句,本篇就介绍下各种Query。IndexSearcher是搜索主类,提供的常用查询接口有: Query quey在org.apache.lucene.search上,代表最终的查询语法树,传入IndexSearcher进行查找。 TermQuery:在某个Fie 阅读全文
摘要:
分析器介绍 搜索的基础是对文本信息进行分析,Lucene的分析工具在org.apache.lucene.analysis包中。分析器负责对文本进行分词、语言处理得到词条,建索引和搜索的时候都需要用到分析器,两者应当是同一个,否则没法很好的匹配。 Lucene的分析器往往包括一个分词器(Tokeniz 阅读全文
摘要:
为了生存,就得干一行爱一行。那就学习下lucene吧。全文检索介绍流程:建索引准备待搜索文档文档分词:将文档分成一个个单独的单词,去除标点符号、停词(无意义的冠词介词等),得到token语言处理:统一小写,单词缩减或转变为词根形式,得到term索引:用term创建字典,term->doc,对字典按字... 阅读全文
摘要:
zk支持java/c访问,java常用的有apache-zkclient、社区版的i0tec-zkclient、github.adyliu,apache-zkclient是zk自身提供的接口,i0tec/adyliu都是对apache版的封装丰富,提供了便捷的事件监听和数据序列化。C版的使用见"zk... 阅读全文