如何实现lucene的实时搜索
fys124974704
2008-07-07
在对索引搜索的时候,一般不建议对索引进行和数据库同步更新,但是现在我想研究一下如果做同步更新,我也想了很久,也找不到方案,请知道的人给点建议!谢谢!
|
|
tovegar
2008-07-08
这个问题,我做过!
可以利用spring的后拦截,对于save update delete开始的方法。 利用后拦截截获保存的对象,然后在后拦截方法里面直接搞一个保存全文检索lucene的方法。就OK了。不过经验表明,不好 |
|
fys124974704
2008-07-08
首先我们这样考虑,写索引的时候会有同步琐,所以如果同时并发访问一定会出现等待,等待的线程多了,就会出现问题!
我也在苦恼用什么办法啊?? |
|
imjl
2008-07-08
lucene没有实时这个概念,,如果你想做,那么就要脱离lucene,创造一个了。
|
|
fys124974704
2008-07-08
请问javaeye是怎么做搜索的,他是用索引还是用数据库呢?javaeye是实时的哦!
|
|
edwardpro
2008-07-09
fys124974704 写道 请问javaeye是怎么做搜索的,他是用索引还是用数据库呢?javaeye是实时的哦!
用缓存就好了 ![]() |
|
tovegar
2008-07-09
确实不好做实时的,但是1分钟2分钟建立一次索引也算实时把。
引用 首先我们这样考虑,写索引的时候会有同步琐,所以如果同时并发访问一定会出现等待,等待的线程多了,就会出现问题!
我也在苦恼用什么办法啊?? 这个问题可以用消息传递机制,这些所有的都排列去建立索引了。 |
|
fys124974704
2008-07-09
消息传递机制??ejb的消息驱动吗?
|
|
johnnyhg
2008-07-10
从性能考虑,实时不够好。
一般来说,一个网站的搜索会提供两种方式: 1、全文检索 2、高级搜索(sql方式) 两个完全可以满足查询的需要,如果要实时查,就用高级搜索好了。 |
|
javaeyes
2008-07-10
实时 , 根本没有考虑里面的计算量。Lucene是做不到的
javaeye也是一天一次的索引吧 |