2011-02-08 8 views
28

he intentado varios enlaces pero me parece que no puede encontrar un buen recurso en la creación de un corredor Solr ejemplo, que trabaja con los carriles en la producción.Configuración Solr de manchas solares con rieles en el entorno de producción

entiendo que usted tiene que configurar el servidor Solr para la producción. He intentado la configuración de Solr con Tomcat, pero no puedo vincularlo a la aplicación Rails.

¿Hay algún buen recurso por ahí que podría utilizar?

Gracias

Respuesta

7

Este blog puede resolver su pregunta:

Instalar Solr 4.4 con embarcadero en CentOS, y configurar el servidor Solr para trabajar con la mancha solar de la gema. (http://blogs.pigrider.com/blogs/26)

A continuación se presentan algunas partes del blog: ......

8) copiar este archivo de configuración schema.yml de su aplicación Rails en el directorio principal de la carrera Solr 4.4 instancia. Anulará el archivo de configuración de ejemplo de Solr y configurará el servidor Solr 4.4 para que funcione con Sunspot Gem. cp /RailsApplicationPath/Solr/conf/schema.yml/opt/solr/solr/collection1/conf /.

El directorio de inicio de la instancia de Solr 4.4 en ejecución es/opt/solr/solr/collection1 /. Puede encontrar esta información de Solr página de administración http: // l o c a l u e s t: 8983/Solr/admin

9) Añadir versión campo en el schema.yml archivo de configuración para satisfacer Solr requisito 4.4 de inicialización. En realidad, se deben agregar dos líneas de código al archivo. Ellos son:

<field name="_version_" type="long" indexed="true" stored="true" multiValued="false"/> 

<fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0"/> 

El esquema del archivo de configuración.yml con el tiempo se verá así:

<schema name="sunspot" version="1.0"> 
    <types> 
    <fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0"/> 
    <!-- *** Other Sunspot fieldType Definitions *** --> 
    </types> 

    <fields> 
    <field name="_version_" type="long" indexed="true" stored="true" multiValued="false"/> 
    <!-- *** Other Sunspot field Definitions *** --> 
    </fields> 

    <!-- *** Other Sunspot Configurations *** --> 
</schema> 

......

42

La joya de la mancha solar incluye el binario sunspot-solr. La configuración más simple sería simplemente ejecutar sunspot-solr start. Dependiendo de cómo se implemente su aplicación, también puede incluir una tarea en su implementación de Capistrano que use la tarea de rake proporcionada por Sunspot para iniciar un servidor de Solr. A saber, rake sunspot:solr:start RAILS_ENV=production.

Conseguir más profundo del que podría implicar: la instalación de Tomcat como un servicio independiente, iniciado y detenido con su propio script de inicio (o Upstart config), lo ideal es monitoreado por Monit o un dios; descargar y desplegar solr.war dentro de Tomcat y configurar el solr.xml para referirse a una ubicación conveniente en el disco para los datos de índice, solrconfig.xml y schema.xml a ser almacenado.

La wiki de Solr también incluye una página en installing Solr with Tomcat y other servlet containers.

En cualquiera de las opciones autohospedadas anteriores, hay un punto importante a tener en cuenta con Sunspot: deshabilitar sus confirmaciones automáticas, y confiar en la configuración de autoCommit de Solr en solrconfig.xml. Puede desactivar esas confirmaciones mediante el establecimiento de auto_commit_after_request: false en su config/sunspot.yml.

Por último, si está más interesado en subcontratar todo esto, también hay mi propio servicio de Solr alojado en http://websolr.com/. Podemos ponerlo en funcionamiento en unos pocos clics.

+1

que finalmente lograron ejecutar Solr con Tomcat en Ubuntu 10.04 servidor. Lo último que queda es cómo puedo conectar esto a mi aplicación de rieles? –

+0

@Nick, ¿podría proporcionarnos más información sobre por qué deberíamos establecer auto_commit_after_request en false en este escenario? Este es el único lugar que he visto mencionar. –

+2

Los commit son caros y bloquean otras escrituras. Emitir un compromiso después de cada solicitud está bien para el desarrollo y los sitios pequeños en producción, pero se convertirá en una carga para todas las actualizaciones de Solr a medida que crezca el tráfico de escritura. Tiene razón en que probablemente esta documentación no esté muy bien documentada en este momento. –

Cuestiones relacionadas