solr配置定时任务实现自动构建索引

安装solr

参见博文:Apache solr入门

配置dataimport

参见博文:Apache solr进阶----导入数据库数据

配置定时任务

  1. 下载jar包,名字:solr-dataimport-scheduler.jar (jar包自行下载,csdn不允许我免费上传重复资源)
  2. 将jar包上传到$SOLR_INSTALL_HOME/server/solr-webapp/webapp/WEB-INF/lib目录下
  3. 修改$SOLR_INSTALL_HOME/server/solr-webapp/webapp/WEB-INF/web.xml文件,加入以下内容:(注意ApplicationListener后不要多复制了空格)
<listener>
        <listener-class>
                org.apache.solr.handler.dataimport.scheduler.ApplicationListener
        </listener-class>
</listener>
  1. 在$SOLR_INSTALL_HOME/server/solr/conf目录下新增文件 dataimport.properties
  2. 详细配置文件参数意义如下:
#################################################
#                                               #
#      dataimport scheduler properties          #
#      数据端口调度程序                         #
#                                               #
#################################################
 
#  tosync or not to sync
#  1- active; anything else - inactive
# 1:启动定时同步程序,其他值均是不启动
syncEnabled=1
 
# which cores to schedule
#  ina multi-core environment you can decide which cores you want syncronized
# leave empty or comment it out if using single-core deployment
#  修改成你所使用的core,多个core用逗号(英文逗号)隔开
syncCores=instance,esbinstance
 
# solr server name or IP address
# [defaults to localhost if empty]
#这个一般都是localhost不会变
server=localhost
 
# solr server port
# [defaults to 80 if empty]
#  安装solr的tomcat端口,如果你使用的是默认的端口,就不用改了,否则改成自己的端口就好了
port=8983
 
# application name/context
# [defaults to current ServletContextListener's context (app) name]
#  这里默认不改(\tomcat\webapp\ 下的solr目录名)
webapp=solr
 
# URL params [mandatory]
# remainder of URL
# solr同步数据时请求的链接, 如果需要定时同步全部core,去掉连接中的entity参数,即为同步全部core
params=/dataimport?command=delta-import&clean=false&commit=true&optimize=false&wt=json&indent=true&verbose=false&debug=false&entity=INSTANCE_DETAIL
 
# schedule interval
# number of minutes between two runs
# [defaults to 30 if empty]
#这里是设置定时任务的,单位是分钟,也就是多长时间你检测一次数据同步,根据项目需求修改
interval=10
 
#  重做索引的时间间隔,单位分钟,默认7200,即5天;
#  为空,为0,或者注释掉:表示永不重做索引
reBuildIndexInterval=0
 
#  重做索引的参数
reBuildIndexParams=/select?qt=/dataimport&command=full-import&clean=true&commit=true
 
#  重做索引时间间隔的计时开始时间,第一次真正执行的时间=reBuildIndexBeginTime+reBuildIndexInterval*60*1000;
#  两种格式:2012-04-11 03:10:00 或者 03:10:00,后一种会自动补全日期部分为服务启动时的日期
reBuildIndexBeginTime=03:10:00
  1. 重启solr,一方面可以通过观察日志查看同步情况,再者可以通过在界面查询数据来验证定时任务是否有在正常运作
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值