搜索引擎Hoot的源码阅读(提供源码)

  开门见山,最近阅读了一下一款开源引擎的源码,受益良多(学到了一些套路)。外加很久没有写博客了(沉迷吃鸡,沉迷想念姑娘),特别开一篇。Hoot 的源码地址, 
原理介绍地址。外加我看过以后的注释版本,固然我本人对源码作了一些调整,我叫它HootEngine。linux

  介绍很少说,能够直接下载源码调试,已经提供了Demo可供玩耍。里面有不少地方值得学习,好比LZO压缩、读写锁的方式、IO读写的一些技巧、安全数据结构(有序列,安全字典等等),我本身是有打算彻底看完(目前的进度是70%,有部分是能够忽略的)。Hoot自己有很多缺陷,例如使用了WIn32少许绑定了系统API(不过我后来直接就改掉了)、文件路径出现硬编码(这个很伤,须要修改后才能兼容linux的路径作到跨平台)。还好整个项目的代码量不大,不少地方能够作优化,好比加入一些并行计算。也能够本身扩展组件,搭建本身的搜索引擎或者融合别的组件成为一个新的东西,MIT的开源方式也至关nice。结合大环境,基于Lucene的Elasticsearch都作得发财了,搜索引擎其实应用的很广,目前不少机器学习、大数据分析,都离不开搜索引擎,以前也有说起推动算法引擎和搜索引擎结合做为解决方案的(目前国内玩得溜的,应该是淘宝的搜索),套路不少。git

相关文章
相关标签/搜索