2011年8月24日星期三

BlogSpot短暂解封

偶然搜到blogspot上的文章,发现居然可以打开,本来平常偶尔搜到blogspot上的技术文章是绝对打不开的,试了一下自己的blog,居然是可以打开的,难道是大运会开幕了,为了避嫌?对于这样一个blog的封锁,我实在是无法想明白,也不想去想,那就认了吧。在别的blog上,看着版面,我一般都不愿意写blog了。

2009年8月21日星期五

闭上嘴

突然发现自己好像成了一个爱抱怨的人,对开发环境的失望,对开发团队的过高的希望。。。
这样也许看来是对项目的过度关心,这样却给我带不来任何的好处,该怎么就怎么样吧,有些东西积重难返,要改变不是一朝一夕的事情,做好自己的本分,给自己一个轻松的工作环境,得到应有的认可,就够了,我毕竟对项目没有那么大的责任。

2009年8月19日星期三

原来是这样的工作效率

发这个博文也不是抱怨,只是感慨一下
本人是一个大型公司分公司的,"有幸"来总部开发项目,见识到了这里的工作效率,不但是沟通成本的问题,大多数人不上心是项目达不到我认为的理想的效果的原因,设计不好好做,开发的也没有疑问,勉强做完设计也就罢了,不去想为什么;工作时间玩游戏聊天的大有人在,我这个分公司的不小心跑到这个重要项目里面居然成为主力;一看他们之前的写的代码,意大利面条,捏着鼻子看完,为了一个GenericDao都争取了好久,而技术负责人对某些技术的无知而又不愿意去学习的情况真是恐怖,既然定了在项目在JDK1.5的平台上,却不使用新特性,Dao设计的特别差,造成了大量代码冗余;最后多次和其他开发人员沟通,最终是换来;决定系统使用大量Ajax,居然没有几个人会;说的如此重要,我这个原本做设计和架构只得负责写了大量的JavaScript;可怜我玩命工作,在短短两个星期之内开发了框架,培训了人员,贡献了大量代码,轮到评绩效,居然是个C;

是否看重了工作,是否太用心,是否在自己身上花的时间不够?在分公司,由于人手少,没有可以推卸的人和对象,什么都要自己搞定,反而有成倍的工作效率?而在总部号称重要项目的大型团队,反而觉得难受;也许这就是国企吧,在国企,表现最重要;选择国企的原因是工作性价比比较高,身体要紧,我要悠着点了

360safe导致Eclipse启动出错?

今天在笔记本上安装了一下360safe,居然导致我eclipse无法启动,需要在eclipse.ini里面加上vm选项指到javaw.exe才可以;上次在台式机上遇到一样的问题,没有意识到360safe的问题,也就那样处理了,360safe总体来讲还是不错的,但是不知道影响的范围广不广,这里记录一下。

2009年8月7日星期五

不再由于p2,而迟疑升级到Eclipse 3.5

Eclipse 3.5 提供了一些新特性,很吸引人,比如文本块选定等等功能,但是从3.4继承来的P2功能,虽然从更新的流程上舒服多了,3.4动不动就上网下载一堆东西,说个题外话,目前项目组很多人用Crack的MyEclipse
7.5, 其是基于3.4, 为了装个SubClipse插件是费劲了功夫。由于这个我不喜欢的P2,我迟迟没有用Eclipse 3.5,
我喜欢用Link的方式引入,并且按照插件名组织好,不喜欢可以很方便的去掉一些插件,虽说dropin目录可以提供手动安装下载的功能,但是由于GUI在线安装时P2不能选择目录,有些插件不提供下载的时候就非常麻烦了,只能安装之后在去安装目录中找出来,自己组织到另外的文件夹中,这样非常的烦人,而3.4之前宣称的可以enable
classic update manager的功能,在JEE的eclipse版本中都找不到选项,只有eclipse-SDK版本中可以,当时甚至有人总结eclipse
3.4是质的倒退。今天突然心血来潮在网上找这个方面的解决方案,找到了一个比较好的方法:

# I start eclipse with:

-configuration C:\eclipse\extensions\foo\eclipse\configuration

# I install foo using the update manager.

# Now I can use the extension by creating a foo.link file inside the
links directory of an eclipse installation (you might have to create
the links directory) containing:

path=C:/eclipse/extensions/foobar

另外,貌似3.5中JEE版本可以选择性的enable classic update
manager了,那么对比上面的方法,更倾向于使用老版了更新管理器安装插件到指定目录。

2009年7月15日星期三

这个民族的未来

突然有这个感受, 是因为最近一些事情引起的
搞笑的绿坝~~
政府托市~~
逆世界潮流的房价上涨~~
.......

这个世界太残酷了, 不会因为穷人的呼吁而改变什么, 中国民生永远都是做得好看的表面文章

闭嘴, 收起你的忿忿不平, 加油努力, 争取你的地利人和, 多点商人的气质, 不想太多了, 让自己的小家在这个没有未来的国家里过得好一点;
闭嘴, 收起你的忿忿不平, 加油努力, 增涨你的能力, 离开这个你认为没有未来的国家, 去世界上其他的理想国度...
反正, 闭嘴, 收起你的忿忿不平

2009年7月2日星期四

突然想赞一下VeryCD和电驴

个人拙见,一句话给个总结,用电驴比用迅雷道德

其实之前基本上是不用电驴的,下电影用迅雷多些,最近由于找一些学习资料,才用电驴比较多;
迅雷的速度确实不错。但我最不爽的是迅雷客户端广告,即使用迅雷,我用完马上就关掉,避免偶尔给我弹个广告出来!
相对于VeryCD客户端,迅雷就像全身贴满了创口贴一样恶心
VeryCD页面上的广告大多会非常的干净和漂亮,不像很多其他网站和客户端上面满满都是关于"增大"之类的广告

最近看到有人评绿坝的文章,说到了暴风影音曾经造成的全国断网事件,我其实一直对暴风影音嗤之以鼻,我用的MPC版本是VeryCD发布的,
干净没有广告,可怜我们信息部门,很多搞维护的同事给需要安装媒体播放器的同事还安装满身都是广告的暴风影音!终于有一次开会的时候,
我忍不住了,把正在讲操作系统镜像制作而集成了暴风影音的同事打断了,说
暴风影音是个流氓,你们不知道啊?它是盗用了开源的MPC成果不惜损害千万用户权益,蒙混菜鸟电脑使用者,并且以此发家致富的流氓你们不知道啊,
要用就用VeryCD版的StormPlayer, 或者用开源的smplayer!

在互联网创业英雄的榜单中,我对VeryCD的创始人是非常敬佩的,对于有些赚得金钵满盆的人觉得在创业经历上可以学习,但是在道德层面上我是非常讨厌的。

纵观现在的网络共享平台,在线媒体也好,即时通讯也好,还有哪几个客户端可以如电驴一样干干净净?

当你登陆verycd的首页,标题拦上的哲言是否让你偶尔深思,又偶尔斗志激昂呢?我尊敬和喜爱verycd团队!

2009年6月19日星期五

python的几个图表解决方案

排名不分前后,按我找到的顺序
(1) 科学绘图,数学函数,GNUPLOT,http://www.gnuplot.info/,它有一个python的bind,但是考虑生成柱状饼状图等图表还是不考虑它为妙
(2) XML/SWF Charts,
这个实际上也不是python的,而是接受标准的XML数据,但是其生成的图表非常的好看,并且有交互性,相对于静态图片图表我更加倾向于flash,只可惜它是商业软件,免费版本有如下限制,点击图表将进入它的主页;另外不能在另外的flash中显示一个图表,我理解为不能图表嵌套,所以免费版本基本也可以接受吧
(3) ChartDirector, 这个图表软件几乎为所有主流编程语言提供了API,可是免费的版本没有,而且显示效果我看也没有XML/SWF Charts好
(4) 可以采用Eclipse Birt项目,把BIRT部署为单独的web app,然后传送数据让其显示,这样做就是又引入了java了
(5) 在线方案,使用google chart api,动态由google给你生成png图片,然后你显示就可以了,但是这样对于内网应用不行。
(6) 目前我觉得最好的方案,open flash chart, 是使用flash生成图表的,并且是开源的,这就具备了XML/SWF
Charts的优势,交互性比较强,然而从显示效果上来看,确实不如XML/SWF Charts,
不过这些只要努力就可以改变的,并且它的样式可以定义,所以图表是否漂亮是自己定制的本事了。并且SWF是开放的格式。open flash
chart2 它使用现在最流行的json数据格式,这实际上比xml更加简单和小巧,并且没有xml解析的时间,也许在性能上可以更加的突出吧。再有就是open
flash chart也不是python独有的方案,由于json是标准格式的,现在由的库基本所有的主流编程语言都有库了,非常不错。其中python的绑定就是pyofc2,
http://btbytes.github.com/pyofc2/. 只要你搞清楚了open flash
chart的格式和控制,那么你用任何语言开发都不要重复投资学习了,这一点真是不错。
(7) 同样是flash chart解决方案, amchart, http://www.amcharts.com/
它也提供了免费版本,但不是开源的,唯一的限制就是会在生成的图的左上角有一个到其主页的链接

2009年6月12日星期五

对绿坝很无语

如果说是GFW封闭了blogspot, wikipedia之类的站点, 我也就忍了, 对某些幼稚的网名屏蔽这些信息并不是坏事,
况且也屡屡收到FLG等等组织发的反动邮件, 抱怨两句也就算了, 最终还是认了, 翻墙翻惯了之后, 也利索了, 对于有经验的的人,
这点阻碍也就算不了什么了.

最近在网上闹得沸沸扬扬得的信工部,绿坝事件, 刚开始也没有什么, 反正此等软件是限制不了我的, 大多数会重装系统的人也限制不了,
就算要微软加入系统了, 我还有Linux呢, 但是看到所谓4700多万人民币买断其一年的服务供全社会使用这样的消息时, 我受不了了,
真是太无语了.

这种过滤软件, 世面上早就有, 我记得好像10年前就有美萍安全专家等类似的软件, 如果家长需要, 自行安装下载这样的软件即可, 何必这么大手笔的喂宝这两家小公司呢? 就算全社会招标来做, 如果只是一年让全社会使用, 就算不花钱, 我想很多大公司也是愿意的, 这能先期占领市场啊! 为什么要花这个冤枉钱!如果有钱, 如果真的想促进中国信息业发展, 为什么不资助类似于文泉驿这样的项目, 或者干脆买断几个商业字体供全社会使用, 这样利国利民...

我们的胡主席, 我们的温总理, 尚能通过网络听取大家的意见, 因此被大家亲切的称为"拾锦八宝饭", 而下面这些个小鬼究竟哪个经搭错了,
按说搞信息产业的, 思维应该比较新才对.

我无语了, 我真的无语了...

我甚至开始担心我们国家的未来...

无语了...

2009年6月11日星期四

从UCWEB和雷军博客想到的

最近换了移动的新上网套餐,并且开通了cmnet上网,还有就是用上了UCWEB浏览器,在手机上我使用的第二个浏览器,体验非常好,唯一让我不太舒服的是广告和那些不不想看到又总是误点的便签,通过网上找到的方法进行设置之后,它就几乎完全符合我的要求了,它非常让人感觉其用心的地方有这么几个:
触摸滑动控制前进后退滚动
缓存页面
多窗口浏览

这两点大大加强了用户的体验,所以才成就了它的成功,随着移动互联网的发展,我想它们还能进一步发展壮大!

从它的导航栏里,我找到了雷军的博客,阅读了之后,其中关于创业的文章让我印象非常深刻,他说到了产品要做到极致才可以获得用户,另外快速抢占市场也非常重要,结合自己在里面软件开发工作中的经验还有眼前的UCWEB带给我的震撼,感受真的是非常深刻!在做产品的时候极致和快速是两个有着辩证关系的方面,要做到极致自然要更多的时间,这需要更加高的开发技术才可以尽量缩短开发周期,在这一点有时在做产品的时候有点心有余而力不足,所以加强学习是今后很长一段时间内的事,自己懂得的还太少太少!

2009年6月5日星期五

遗失的美好

在整理旧电脑的时候,发现了一些大学里面存下来的一些midi音乐,听到的是第一首是beyond的灰色的轨迹,然后一遍一遍的放,静静的听,然后用手机写下这篇blog。
大学里面曾经有一段时间沉迷于吉他和midi音乐,想着自己用音乐软件怎么谱曲做midi音乐。
那个时候最大的兴趣是计算机,所以始终没有搞出过什么名堂,所谓弹了三年吉他还停留在初学者的水平。
工作了之后,有了钱,终于买了个好点的吉他,然而工作挤占了太多的时间,计算机也是个学不完的东西,再加上自己是个兴趣,慢慢吉他还是蒙上了灰尘。
可慢慢发现自己慢慢成为了没有什么特别业余爱好的人,这是一个很危险的事情。打球是锻炼身体,不能算;看电影是消遣和学习英语,也不能算,那么我那把蒙尘的吉他呢?钱该要把它拾上来好好练练了,也不枉自己曾经那么爱过吉他。可是那样的心情呢?那样的同学呢?

2009年6月4日星期四

加速smplayer的运行

由于使用very cd的stormplayer播放mkv电影的字幕闪烁问题得不到解决, 我想到找一个基于mplayer的播放器来解决,
自然想到了smplayer, 它在windows下的移植版本非常好, 现在mplayer网站上都推荐它.
下载之后,开始的体验并没有怎么好, 因为总感觉界面载入有很多迟延, 不过怎么想, smplayer应该不会这样才对.
今天偶然在设置里面选择了默认字体, 发现程序运行速度大大提升了, 猜想是由于之前没有预设的字体, 导致程序需要探测字体,
而设置了默认字体之后能大大增加速度, 顺便说一下, 我用的zune主题, 该主题好像很多地方都有问题, 比如GTK程序默认下的中文乱码等.

smplayer是基于QT程序, 从感官体验上来看, 似乎QT开发的windows程序要舒服很多,
用smplayer的感觉就比基于gtk的stardict和gnucash要舒服些. 如果用c++开发跨平台图形界面, 会要考虑QT一下了.

2009年6月2日星期二

my blog has been marked as a spam blog?

Spam blog? Oh, No.
It's a huge mistake!
Recently, I cann't visit my blog directly from China, because of the blocking of GFW, and I keep updating my blog via gmail. Today, when I login to blogger.com via proxy to edit a post, to my surprise, my blog has been marked as a spam blog! I checked blogger's service terms, and the criteria of judging a spam blog, I am sure I have nothing to do with it! I insist blogger send me an email to explain this, why my blog was marked as a spam blog!
我的blogger被标记为垃圾博客?!
最近好久没有登录blogger了,由于在中国大陆防火墙的限制的原因,一直使用gmail邮件发送blog,今天突然想起要登录修改一篇post,就发现我的blog已经被标记为垃圾博客了,如果不及时申请解除封锁,那么在20天内将被删除?我看了blogger关于垃圾blog的评判规则, 我觉得我没有任何违反的地方,鉴于此,我强烈要求blogger给我发邮件解释!这是侮辱!

LVM初接触

用了多年Linux了,对LVM的了解停留在名词的程度上,因为之前一直在PC机上用Linux,所以没有注意得到。

上个星期在一台服务器上装CentOS的时候选择要系统自动分区,它给分成了一个/boot卷,另外一个就是LVM,突然好奇,CentOS默认的在服务器上应该不错,所以就要它默认装了。昨天突然想到这是个光盘景象服务器,将来要添加硬盘怎么办,除了新建一个分区挂载新的硬盘之外,那么能否一个分区跨越硬盘呢?于是google了LVM,看到LVM的资料,我又一次的感觉自己之前了解得太少了。之前为了充分利用这个160G的硬盘,没有考虑平常系统恢复的需求,要是我自己操作,要是系统当掉了,肯定可以尝试使用Live
CD修复,而且原来以为那个逻辑卷管理器占用了整个物理分区,那么也不存在坏硬盘坏一个分区的情况,所以只分了一个根分区和一个swap分区。后来领导想到我不在的时候,如果系统当掉,要能直接像GHOST那么恢复,那么自然根分区就要分开了。我现在需要的是减少ext3分区大小,很多文章上都是说的使用reiserfs时扩大分区的情况,
下面说说我的经验

扩大分区时, 是先扩LVM大下,然后括文件系统分区大小,文件分区大小的扩大,ext3和reiserfs可以动态在线扩展,并且速度非常快。涉及到磁盘减少大小时,就不能在线了,如果是根分区的改变,还必须使用live
cd启动,而不能是本身的操作系统。可以想到的是,减少分区,要先缩文件系统,再缩逻辑卷。并且需要注意的是,逻辑卷要先激活才能挂载,不要尝试直接挂载/dev/sda2之类的分区,它的分区类型是8e,是不能直接挂载的。LVM的相关命令里面,可以分为几个组,以pv开头的命令,是表示处理物理卷的相关命令,vg开头的命令是处理卷组的工具,以lv开头的是处理逻辑卷的工具。相关使用使用-h参数打印命令帮助即可。值得注意的是,文件系统的resize和逻辑卷的resize的大小单位可能不一致,所以做两次resize可以保证文件系统使用了所有的逻辑分区大小。比如第一次resize缩小到你需要的大小之下,然后缩小逻辑卷,然后再一次不带参数resize文件系统,文件系统就能完全的使用逻辑卷大小了,
下面是参考命令。


vgdisplay #display the volume group, you can get volume_group_name here
vgchange -ay volume_group_name
lvdisplay #show the logic volumes
#假设要改变大小的是/dev/VolGroup00/Lov00, 需要缩小到10G
e2fsck -f /dev/VolGroup00/Lov00 #在resize之前强制要求的
resize2fs /dev/VolGroup00/Lov00 9G
lvreduce -L10G /dev/VolGroup00/Lov00
resize2fs /dev/VolGroup00/Lov00

使用vim编辑docbook文档

首先是有一篇比较经典,非常完备有用的文档,VIM as XML Editor,这里涉及到了使用VIM编辑xml的几乎所有知识,学一点即可大大增加功力,。

另外, vim有一个xml.vim插件,把此插件放在ftplugin中,当你编辑xml文档的时候,就可以tag自动补全了,你会感觉使用它写xml简直是行云流水,使用参看一下文档:help xml-plugin。基本的用途当你输入<tag>就能自动补全</tag>, 输入<tag>>就能自动补全</tag>并且换行,光标停留在将要输入的地方,非常贴心。

docbook虽然也是xml文档,但是你用vim编辑时,会发现自动补全的功能丧失了,因为vim为它设定了单独的文件类型docbk,所以在ftplugin目录中,做一个名为docbk.vim到xml.vim的符号链接,在windows下就只能复制了,其实这个在xml.vim插件的安装说明上就有,我忘了看了,所以还疑惑了好一会,为什么编辑docbook文档时不能自动补全。

最后,顺便搞了一下在window下安装使用docbook的方法,在linux下,我最常用xmllint作xml验证,还有xsltproc做xslt转换,很多网上有的文档都是使用java的xslt处理器工作的,因为通常会在linux下使用一个Makefile来驱动,最好有xsltproc的windows版本就好了,在网上查了一下还真的有,我在windows上本来就设定了一个GNU工具集,所以只要把xsltproc的可执行文件还有相关支持类库放到GNU工具集一起就可以了,Makefile文件也能在windows平台上用来编译docbook文档了。这里有一个设置的文档

需要注意的是,xmlcatalog的设置,需要设置一个XML_CATALOG_FILES环境变量指向这个catalog文件,那么在处理xml文档时就会在本机找DTD文档了。

2009年5月22日星期五

亲爱的,你听我说

亲爱的,
我在写这些东西的时候, 你就坐在不远的地方背对着我,
你知道吗, 我此刻有多么的难受和伤心, 看着你刚刚的表现, 我对我们的未来生活不禁担心起来.

在一起这么久, 我总想着我们可以跨越一切困难, 一起走下去, 我总认为作为男人, 我可以承担起组建家庭的一切. 交往快两年了, 中间吵吵闹闹, 甚至一度分手, 可每当想起你的好, 想起你写在我日记本上的那些傻傻的文字, 想起被你收拾的干干净净的家里, 我就舍不得, 我想, 我努力一点, 我容忍一点, 我们在一起就会好的.

宝贝, 我从来不理会别人的评价, 也从来不想去想我们之间学历的差距, 我也没有认为我正规大学毕业和你一个旅游职业学校的中专生相比会有什么优越感, 我相信自己的感觉, 我觉得你会成为一个好妻子, 可是, 我有时候真的发现我们不能互相理解.

今年, 旅游业不景气, 一直在张家界没有赚到什么钱的你, 准备到长沙来发展, 也为将来结婚在长沙立足打个基础. 而你似乎也对旅游业厌烦了, 不想再在旅游业内工作. 我托熟人在机票代理行业给你找个位子, 可是回复是今年经济情况不好, 大家都要熟手. 我们也一起分析过你的优势和劣势, 学历低, 没有什么特长, 再加上想转行无疑是艰难的, 在各大招聘网站搜索的结果, 适合你工作的没有几个, 而你却还是迷茫的, 你在想着期望中的导游高薪水, 而实际上又是饥一顿饱一顿的日子, 我想你先安定下来, 然后我辅导你学习专业技术, 提升学历, 然后再一步一步发展, 可以似乎看不到, 在你的眼中, 那些职业都是看不上的, 可自己实际上又是高不成低不就的, 你的眼中我看到的斗志越来越少.

刚给你在网上参考的职业, 帮你发邮件去应聘咨询, 你却担心会马上聘上不能下周回去跟你见父母, 这让我很难受和失望, 还记得去年我推荐你来我们公司应聘呼叫中心人员, 你却连简历表都填不好, 也许你没有经历过这些, 可是我心中的你, 冰雪聪明啊, 人只要有信心就可以提升啊, 你为什么就不能坚持, 为什么就不能理解呢?

去见你的父母, 有时间都可以去, 我的父母你见过了, 大家都喜欢你, 房子也准备买了, 只查你能在长沙立足下来, 可我看到现在的你真是好无助, 我不知道你心里到底在想什么, 我跟你说, 你听不进去, 还理直气壮的跟我吵, 可我是为了我们的将来啊.

我是一直好好奋斗的, 也会为了你的幸福一直奋斗下去, 可是作为一个刚刚毕业三年的人, 我现在拿什么来养活你呢, 你说你不想当家庭主妇, 可是你要有自己的能力能立足啊, 我需要你和我一起奋斗啊, 我甚至在心里设想, 将来我们要一起创办一个小公司, 我利用业余时间负责技术层面的东西, 你来做日常管理的工作, 我想我们会比那些对我们评价的人过得好的, 可你的斗志呢, 你跟我说过的斗志和信心呢? 你的智慧和理解呢?

宝贝, 对不起, 我决定了, 我要等你把工作确定了, 不管是在张家界还是在长沙, 我才会跟你回去看你的父母, 否则我不知道去你的老家对于我们还有什么样的意义. 对不起, 我要给你压力的, 我不要看到你嘴上说着要努力, 实际上工作找不到工作, 学习又学习不好这样的生活.

这些我如果跟你谈, 你会不跟我吵吗? 我写给你, 你能看进去吗? 亲爱的, 我觉得我们之间到了一个坎上了, 要是迈不过, 我们就没有未来了. 你能否和我携手走下去?

使用pure-ftpd取代vsftpd

自从使用ftp服务端软件以来就是使用的vsftpd,因为最初它是内置在redhat安装光盘里面的,并且它的表现一直不错.

 

使用pure-ftpd的理由, 支持定义ClientCharset, 所以ftpsamba共享目录时不会出现乱码

Pure-ftpd功能很多, 如果要自定义和配置用户登陆账户还有配额等设置, 要非用pure-ftpd不可了.

 

但是在Centos, pure-ftpd默认的使用PAMAuthentication是不工作的, 要改到UnixAuthentication才可以, 我为了这个功能试验了一个下午, 最终从网上搜到有其他人也有如此的问题.

 

而使用Virtual-User的功能, 最初也犯了个大错误, 最终仔细看文档才知道最终配置在配置文件中的不是pureftpd.passwd,而是增加完用户之后, 必须使用pure-pw mkdb生成pureftpd.pdb索引. 认真阅读README.Virtual-User的说明文件!

当blogger被封还有MS Live Space没有广告的时候

blogger从5月多被封以来, 我是郁闷得不行~
突然上我的live space居然发现没有广告了~ 说实话, Live Space上的广告并不讨厌, 挺漂亮的
但是以前有blogger, Live Space只是做一个备份而已. 看来我现在要重新启用了, 并且要改变习惯
使用gmail来发布blog,就能同时保证两个博客的更新了, 并且还能备份到gmail党中, gmail总没有理由被封吧~

manage apache2 modules, the debian way

use a2enmod to enable modules
use a2dismod to disable modules

2009年5月15日星期五

sphinx的一点使用心得

为什么要用到sphinx呢?全文搜索,在此方面sphinx非常优秀。
为什么不考虑Lucene? 避免引入过多的复杂性,Lucene是基于Java的程序,我现在是对一个光盘镜像数据库进行索引,光盘的描述信息都存储在了和光盘镜像同名的的xml文件中,搜索界面直接用php和python即可,很简单,不想引入Java,在服务器上也不用过多配置了,另外,考虑到sphinx有一个xmlpipe驱动,我以为我只要写一个程序读取所有的xml文档,然后按照要求输出即可。xml文件信息中没有数据库中id的概念,而是根据上传时间生成了一个时间字符串,精确到秒,比如20090514101210. 我按照我的想法做了,发现一个问题
(1)Sphinx作为文档id的话,必须要求int值,在这里我是想直接使用时间字符串来做,可以经过实验发现sphinx最多支持id的长度为10位,也就是100亿,而时间字符串超长了。
(2)Sphinx在索引时并没有存储原始信息内容,所以搜索结果除了文档ID,什么也得不到,需要根据ID重新获取记录的原文,这样在没有数据库的条件下,从XML中检索效率太低,本来考虑在建立索引的时候,生成一个文档id到记录原文的索引,然后从此索引中拿数据,但是这样觉得多此一举,sphinx对于mysql是原生支持的,所以还是转换一次,从xml数据到mysql数据库,再用sphinx检索才可以。

从这两方面来讲,sphinx还是不能和Lucene比的,Lucene索引的数据中就可以直接获取摘要不用再从纪录集中取了,对于任何性质的文档都可以进行索引了。Sphinx的优点就是简单快速,所以要根据需要灵活选取了,为了不引入Java,我在此项目中还是使用sphinx好了。