zoukankan      html  css  js  c++  java
  • 搜索引擎Hoot的源码阅读(提供源码)

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

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

      

  • 相关阅读:
    说说Java中的代理模式
    一个奇怪的异常
    JDBC第二次学习
    浅谈事务
    JDBC第一次学习
    Firebug & Chrome Console 控制台使用指南
    js 事件创建发布
    vue ui之 iview 事件拦截
    fetch获取json的正确姿势
    js对象通过属性路径获取属性值
  • 原文地址:https://www.cnblogs.com/RainbowInTheSky/p/8571521.html
Copyright © 2011-2022 走看看