作者|池建强
编辑|小智
授人以鱼不如授人以渔,这个小小的工具,将会让你的学习成长,事半功倍。
你也许尝试过 InfoQ 网站的搜索方式,坦白来说,体验并不好。
你知道公众号上有很多优质内容,但除了在历史列表人肉检索,可供查询的渠道并不多。
你大概了解,InfoQ 除了网站之外,还有一个公众号矩阵。
有没有一种搜索方式,能整合 InfoQ 中文站、微信公众号矩阵的全部资源?极客搜索,这款针对极客邦科技全站内容资源的轻量级搜索引擎,做到了!
极客搜索
极客搜索是一款针对极客邦科技全站内容资源的轻量级搜索引擎,内容覆盖了 InfoQ 中文站资源和极客邦旗下的公众号矩阵,其中包括:InfoQ、AI、前线、大数据杂谈、聊聊架构、移动开发前线、细说云计算、前端之巅、高效开发运维、EGONetworks、StuQ、极客官舍、极客邦科技。
有了谷歌和百度,为什么我们还要做一款垂直的极客搜索呢?
极客邦科技为用户提供的主要服务之一就是生产高质量的泛技术化内容,随着公司形态的变迁,这些内容散落在 InfoQ 中国网站和大量的微信公众号内。
InfoQ 中国站的内容以国外技术文章翻译和国内技术人原创为主,本身是提供了站内搜索的,但是网站的移动版并不尽如人意,研发和服务器都在海外,访问速度也是个问题。在互联网时代,如果你的访问速度超过 3 秒,就会损失掉一大部分没有耐心和时间的用户。
公众号矩阵则从技术主题出发,生产更为专业和独立领域的内容,与该领域的读者建立连接通道。随着技术知识的泛化和对技能全栈的要求,越来越多的技术人员需要了解更多领域的信息。如何打通隔阂建立一个快捷、方便和统一的通道呢?
我们构建了极客搜索。它可以让你快速、精准的触达极客邦科技的所有内容资源。
快速:我们对极客邦科技的所有技术资源进行了索引,通过对前端和后端服务的优化,每次检索时间在 50 毫秒以内,并以非常简约的方式呈现给读者。
精准:如果你是一个懒人,直接在极客搜索的输入框里键入你想要搜索的内容就可以了。如果你想走的更远,我们提供了多纬度的搜索方式。我们实现了按照 InfoQ 中文站的主题搜索,按照公众号的内容搜索和全站搜索。
举例说明,如果你想搜索 InfoQ 中国网站的 AI 资源,点击首页下方的 AI 主题,进入搜索页,在输入框输入深度学习,就可以找到 InfoQ 站 AI 主题下所有深度学习相关的文章。
如果你想搜索公众号「AI 前线」的机器学习资源,点击首页下方的「AI 前线」图标,进入搜索页,在输入框输入机器学习,就可以找到「AI 前线」公众号内所有机器学习相关的文章。
如果你想全站搜索 Python 和机器学习的文章,在首页输入「Python 机器学习」即可。
最后,我们把搜索结果按照类型进行了分类:新闻、文章、迷你书、演讲和访谈。取你所需。
产品的技术实现并不复杂,重要的是解决用户的痛点,并构建轻量级的用户体验。系统的数据分析模块根据网站的不同主题资源进行结构化和特征抽取,结合公众号资源的特征,进行公众号自动识别。数据采集模块要处理历史数据和新增数据,基于队列机制,并根据特定的规则进行数据去重处理。同时我们要针对数据进行清洗,处理脏数据,保证数据质量,得到标准干净的数据,供存储和呈现使用。
检索系统采用了开源的 Elasticsearch,从近实时、可扩展、中文分词、搜准率和授权率平衡、同义词等几个角度出发,对聚合结果按规则进行索引构建,并进行了部分同义词调优。
展现层面使用了 vue2 + webpack 技术开发的单页应用,打包时小图片和图标字体资源会被 webpack 编码成 base64 代码嵌入 CSS 里, 其他静态资源会被 webpack 打上该文件的 hash 推送到 CDN 上。得益于轻巧高效的 vue2,极客搜索的响应和渲染速度相当快,几十毫秒内就能完成一次请求和页面渲染。
体验一下快捷如风的极客搜索吧,我们的域名是:s.geekbang.org,Mac 和 Windows 用户请把它放到自己的收藏夹,移动用户可以这么操作 —— 以 iOS 用户为例:
在 Safari 里打开网址 s.geekbang.org,点击分享,选择「添加到主屏幕」:
点击添加,极客搜索的图标就会放到你的桌面上,下次使用直接打开即可。安卓手机类似操作。
这次随着极客搜索上线的还有官网(www.geekbang.org)的更新,突出了极客邦科技为用户提供的核心价值和知识社区属性。2017 年的下半年,我们会陆续上线极客邦科技的新产品,包括软件和内容。最终,我们会按计划发布 2017 年技术社区的重磅年度产品。
顺便说一句,这个产品的内部代号叫做:宙斯。
敬请期待!
联系客服