【问题标题】:How to start and Stop SOLR from A user created windows service如何从用户创建的 Windows 服务启动和停止 SOLR
【发布时间】:2011-08-26 17:56:22
【问题描述】:

我有两个 bat 文件 start.bat 和 stop.bat 用于手动启动和停止 SOLR 服务器, 我是否可以创建一个 Windows 服务,它将在启动服务时调用 start.bat 并在停止服务时调用 stop.bat

【问题讨论】:

    标签: service solr


    【解决方案1】:

    考虑 Tomcat 的 Solr 多核功能。每个核心就像一个成熟的安装,“独立的配置和索引,有自己的配置和架构用于非常不同的应用程序,但仍然具有统一管理的便利”http://wiki.apache.org/solr/CoreAdmin

    即使您不使用多个索引,设置起来也更加优雅。如果 Tomcat 以这种方式设置,Solr 在启动时可用。我假设您使用的是 Solr 1.4。

    您需要执行以下步骤:

    设置solr根目录

    概览

    c:\solr 
     |-lib
     |-solr.war
     |-solr.xml
    
    1. 创建 c:\solr
    2. 从 Solr 包目录,将 lib 目录复制到根目录。
    3. 从 Solr 包目录的 \example\webapps 复制 solr.war
    4. solr.xml有如下内容

      <?xml version="1.0" encoding="UTF-8" ?>
      <solr persistent="false" sharedLib="lib">
        <cores adminPath="/admin/cores">
      
          <core name="myindex" instanceDir="myindexdir" />
      
        </cores>
      </solr>
      

    核心参数指定一个新核心。属性指定为服务 http//localhost:8080/mysearchapp/myindex,索引目录是 myindexdir,这将我们带到下一步。

    创建实际的核心

    概览

    c:\solr 
     |-lib
     |-solr.war
     |-solr.xml
     |-myindexdir
       |-bin
       |-conf
       |-data
    
    1. 复制 conf 目录,您已在其中完成了对 myindexdir 的配置。不用费心创建 bin 和数据,它会自动创建。

    设置tomcat

    1. 安装Tomcat,运行一次(不要跳过这个)打开http://localhost:8080看是否安装成功
    2. 当然,使用 services.msc 将其设置为开机启动
    3. 打开此目录 Apache Software Foundation\Tomcat 6.0\conf\Catalina\localhost
    4. 创建文件mysearchapp.xml

      Context docBase="c:\solr\solr.war" debug="0" crossContext="true" >
         <Environment name="solr/home" type="java.lang.String" value="c:\solr\" override="true" />
      </Context>
      
    5. 重启tomcat并打开http://localhost:8080/mysearchapp/ 如果一切顺利,它将显示

      Welcome to Solr!
      Solr Admin myindex
      

    现在像http://localhost:8080/mysearchapp/myindex/select?q=MY-QUERY一样在你的核心上进行操作

    【讨论】:

      【解决方案2】:

      Solr 运行在像 Tomcat 这样的 Servlet 容器之上。因此,要启动 Solr,您必须使用 Servlet 容器配置 Solr,然后启动。

      是的,您当然可以创建 Windows 服务。但是您还没有提到您使用哪个 Servlet 容器来运行 Solr?

      如果是 Apache Tomcat,你去:

      1. Just go to tomcat/bin folder from command prompt
      2. Say service.bat install
      3. You can see the service being listed in the Microsoft Services
      Application
      4. Right click on the service and add solr home (in Start
      parameters). For an example if your Solr home is in D drive then:
      -Dsolr.solr.home="D:\solr"
      5.You are done. Just right click on the service, start it or even you can set 
      it to start automatically when your system starts.
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-07
        相关资源
        最近更新 更多