阅读更多

9顶
0踩

互联网

转载新闻 beta技术沙龙:大型网站的Lucene应用

2009-08-12 14:49 by 副主编 ouspec 评论(2) 有6670人浏览
到目前为止,全文检索已经完全不算高技术门槛了,记得以前看过一本书里面写:“今天,任何程序员,都可以很容易地构造一个全文检索应用”。是的,全文检索的基本原理大家都知道差不多了,剩下的只是实践。我见过纯粹自己开发的,具有AS(Advanced Search)、BS(Basic Search)、DI(Digest)等结构,“像模像样”的全文检索架构,不过应用更多的,却是在开源项目上完善、定制而来的,Apache的Lucene就是众多开源全文检索项目中,名气最大、资格最老、应用也最广泛的一个。本期beta技术沙龙,讲的就是大型网站中lucene的应用,主讲人是手机之家团队的唐福林(“手机之家”总是有些东东来共享,比如上次的DAL,这真是不错)。


众所周知,用Lucene构造一个“索引-查询”的应用是非常简单的,搭好环境,参照(修改)示范代码,很容易就可以成功。但是,要构造一个真正大规模、稳定、可靠的应用,就不说这么简单。程序的编写、模块的分布、架构的设计,都有许多费心思的讲究。按照PPT提供的数据,手机之家目前的Lucene应用,采用的是Lucene 2.4.1 + JDK 1.6(64 bit)的组合,运行在8 CPU,32G内存的机器上,数据量超过3300万条,原始数据文件超过14G,每天需要支持超过35万次的查询,高峰时期QPS超过20。单看这些数据可能并没有大的亮点,但它的重建和更新都是自动化完成,而且两项任务可以同时运行,另一方面,在不影响服务可靠性的前提下,尽可能快地更新数据(如果两者发生冲突,则优先保证可用性,延迟更新),其中的工作量还是非常大的。



演讲的主要内容都PPT里,非常丰富,我就不再赘述了。要补充的是,这份PPT做得非常清楚,需求-目标-进度-设计-上线-测试-上线,整个流程非常清楚,给出的数据同样非常精当,我想,这也反映了手机之家团队的开发规范。



全文阅读:http://www.luanxiang.org/blog/archives/605.html
9
0
评论 共 2 条 请登录后发表评论
2 楼 aoliwen521 2010-08-16 17:41
好贴!!绝对的!!
1 楼 cqllang 2009-08-12 16:36
沙发。。


学习学习。。

最近也在做检索这块。
感觉搭一个Demo比较简单,但真正要做一个企业级应用,要考虑的东西还很多。。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • lilo--Linux加载程序

    LILO是一个在系统启动时运行的程序,它允许选择用于引导计算机的操作系统。

  • linux lilo命令,lilo命令_Linux lilo命令使用详解:安装核心载入开机管理程序

    lilo命令用于安装核心载入,开机管理程序。lilo是个Linux系统核心载入程序,同时具备管理开机的功能。单独执行lilo指令,它会读取/etc/lilo.conf配置文件,然后根据其内容安装lilo。Linux lilo已经成为所有 Linux 发行版的标准组成部分。作为一个 较老的/最老的 Linux 引导加载程序,它那不断壮大的 Linux 社区支持使它能够随时间的推移而发展,并始终能够充...

  • LILO详解

    LILO详解 此文系转载 作者:佚名 原始网址:不详 LILO(Linux Loader)是Linux自带的一个优秀的引导管理器,使用它可以很方便地引导一台机器上的多个操作系统。与其他常用的引导加载程序相比,LILO引导 方式显得更具有艺术性,对其深入的理解,将有助于我们方便地处理多操作系统、网络引导、大硬盘及大内存等诸多棘手的问题。   通常我们谈到LILO,会涉及到两个方

  • linux lilo命令,lilo命令_Linux lilo 命令用法详解:安装核心载入开机管理程序

    lilo命令用于安装核心载入,开机管理程序。lilo是个Linux系统核心载入程序,同时具备管理开机的功能。单独执行lilo指令,它会读取/etc/lilo.conf配置文件,然后根据其内容安装lilo。Linux lilo已经成为所有 Linux 发行版的标准组成部分。作为一个 较老的/最老的 Linux 引导加载程序,它那不断壮大的 Linux 社区支持使它能够随时间的推移而发展,并始终能够充...

  • 实例讲解LILO的配置和使用(转)

    实例讲解LILO的配置和使用(转)[@more@]Linux 加载程序或者说 LILO 是引导Linux 操作系统最常用的程序,本文将以实例详细叙述Lilo 的配置。 如果你第一次安装Linux ,那么可能就需要用到双重启动。 ...

  • Linux lilo命令教程:Linux系统的核心载入程序(附实例详解和注意事项)

    lilo,全称为Linux Loader,是一个用于加载Linux系统的程序。它可以从软盘、硬盘启动操作系统,并且不依赖于特定的文件系统。lilo的主要任务包括定位内核、识别其他支持程序、加载内存并启动内核。

  • LILO使用指南 MBR 根分区 lilo.conf 出错分析 忘记密码

    LILO使用指南LILO使用指南 2001-05-01 10:30 发布者:netbull 阅读次数:252 hubertzou hubertzou@linuxaid.com.cn 计算机的最初启动是由BIOS控制的,在对一些硬件(如:内存、键盘等)初始化之后,它会试图加载硬盘的主引导记录(MBR)或软盘的引导扇区。MBR可通过两种方式运行,其一是定位到活动分区并加载相应的

  • LILO配置攻略

    LILO配置攻略转 周迪〖返回〗〖转发〗  LILO(Linux Loader)是Linux自带的一个优秀的引导管理器,使用它可以很方便地引导一台机器上的多个操作系统。与其他常用的引导加载程序相比,LILO引导方式显得更具有艺术性,对其深入的理解,将有助于我们方便地处理多操作系统、网络引导、大硬盘及大内存等诸多棘手的问题。   通常我们谈到LILO,会涉及到两个方面——LILO

  • LILO使用指南(中)

    LILO使用指南(中)linuxaid.com.cn hubertzou〖返回〗〖转发〗LILO使用指南(中)hubertzou@linuxaid.com.cn三,关于lilo的问题、先装了Windows,再装Linux时,不能安装LILO。这是大多数Linux新手的问题;有些BIOS不能识别大于8.4G的硬盘,旧的LILO不能识别位置大于1024柱面的系统内核(kenerl)

  • Liunx LILO安装使用经验集

    Linux是芬兰青年林努斯·托瓦茨开发并以其名字命名的著名的操作系统,由于它的免费和源代码开放等优点,越来越多的计算机爱好者在安装了Windows系统的PC机上同时安装Linux,以方便熟悉UNIX系统。LILO(Linux Loader)是Linux自带的一个优秀的引导管理器,使用它可以很方便地引导一台机器上的多个操作系统。虽然从Redhat7.3后有了GRUB引导系统,但很多用户还是喜

  • 内核_Lilo详解大杂烩

    Lilo 功能非常强大,它不仅仅可以作为Linux操作系统的引导器,还可引导多个操作系统(eg: Win2000, Win9x, dos, Minix…),以及启动多个Linux内核映像。    在后面的内容中,我们将通过运行在自己计算机上的真实例子,讨论lilo最主要的用法。在开始学习lilo之前,我们还需要一些预备知识--什么是硬盘分区,Linux对硬盘分区的命名方法。 什么是硬盘分区?   

  • LILO使用指南(下)

    LILO使用指南(下)linuxaid.com.cn hubertzou〖返回〗〖转发〗LILO使用指南(下)hubertzou@linuxaid.com.cn四,lilo的启动错误显示分析当LILO装入它自己的时候,显示单词"LILO": 每完成一个特定的过程显示一个字母。如果LILO在某个地方失败了,屏幕上就停留几个字母,以指示错误发生的地方。在技术文档中有更详细的描述。 

  • LILO详细介绍

    Download包含了几个种类,与通常所说的bootloader与uboot 完全不一样。 LILO(LInux Loader),LILO代表Linux加载程序。LILO是一个在系统启动时运行的程序,它允许选择用于引导计算机的操作系统。 简介 可以用LILO引导几个不同的操作系统,如Linux和MS-DOS。用LILO可以定义一个默认的要引导的

  • Linux的LILO引导程序,LILO引导装载器详解

    LILO(即 LInuxLOader)是最常用的两种 Linux 引导装载程序之一。LILO可以被安装进可引导硬盘驱动器的 MBR或者分区的分区引导记录。它还可以安装在可移除设备上,比如软盘、CD 或USB 钥匙。如果您还不熟悉 LILO,那么在软盘或 USB钥匙上进行实践是好办法,所以我们在例子中就是这么做的。在安装 Linux期间,常常指定 LILO 或 GRUB 之一作为引导管理程序。如果选...

  • GRUB和LILO的区别

    从普通的桌面用户到 Linux?系统管理员,大部分 Linux 用户都使用过一种名为引导加载程序的工具。此类工具的不同变种会提供不同层次的支持和功能。在很多情况下,Linux 发行版默认安装的引导加载程序并不总是适合需要;每个引导加载程序的默认设置也是如此。在本文中,Laurence Bonney 讨论了两个流行的引导加载程序 —— LILO 和 GRUB —— 的优点和缺点,并建议了很多配置,以

  • LILO启动问题详解 (转)

    LILO启动问题详解 (转)[@more@]《LILO启动问题详解》 -----------------------------------------------------------------------------...

  • LILO是什么

    从普通的桌面用户到 Linux? 系统管理员,大部分 Linux 用户都使用过一种名为引导加载程序的工具。此类工具的不同变种会提供不同层次的支持和功能。在很多情况下,Linux 发行版默认安装的引导加载程序并不总是适合需要;每个引导加载程序的默认设置也是如此。在本文中,Laurence Bonney 讨论了两个流行的引导加载程序 —— LILO 和 GRUB —— 的优点和缺点,并建议了很多配置,

  • HTML之图片标签

    图片标签用于向当前页面中引入一个外部图片 使用img标签来引入外部图片,img标签是一个自结束标签 img这种元素属于替换元素(块和行内元素之间,具有两种元素的特点) 属性: src 属性指定的是外部图片的路径(路径规则和超链接是一样的) alt 图片的描述,这个描述默认情况下不会显示,有些浏览器会图片无法加载时显示 搜索引擎会根据alt中的内容来识别图片,如果不写alt属性则图片不会被搜索引擎所...

Global site tag (gtag.js) - Google Analytics