he creado un módulo de marco de reproducción que se ejecutará elástico Buscar en Heroku utilizando S3 que persista el estado. No es necesario contar con una instancia EC2, solo paga el costo de los datos S3, que es mucho menor, principalmente transacciones IO. Utiliza la pasarela ElasticSearch S3 (mecanismo de persistencia).
Puede usarlo extendiendo la aplicación Play para crear puntos finales específicos para sus funciones de búsqueda o, si lo desea, puede acceder directamente a la API REST de ElasticSearch (por defecto la expone en la ruta http://yourapp.com/es). Hay un sistema de autenticación muy básico para asegurarlo.
El único inconveniente de esta configuración es que el dinamómetro puede tardar un poco en girar. Por lo tanto, no funcionará bien si dejas que el dinamómetro baje de la inactividad, y es posible que te apliquen cargos por transferencia de datos S3 si eso sucede mucho y tu índice es enorme. Lo bueno es que controlas tus propios datos y es barato y barato. Otra palabra de advertencia: deberá tener cuidado de mantenerse dentro de los límites de memoria de un dinamómetro Heroku. Dicho esto, tuvimos funciones de autocompletado de búsqueda de texto completo trabajando en varios índices sin problemas.
Usted puede ser capaz de construir un módulo similar en Rails usando JRuby a hablar con la API de Java Elasticsearch. Mi principal contribución aquí fue descubrir cómo ejecutarlo dentro de otro framework web, ya que Play también usa Netty, fue bastante fácil de integrar. Las pruebas de rendimiento en comparación con un clúster EC2 + Neumático (gema Rails para ElasticSearch) mostraron que el enfoque Heroku/Play realizó búsquedas más rápidas.
El proyecto está aquí: https://github.com/carchrae/elastic-play - Estaría encantado de ayudar a las personas a configurarlo, debería ser bastante sencillo.
¡Muy bueno! Estaba esperando que alguien salga con un complemento para esto. Tendré que intentar implementar este –
Aún en versión beta pública a partir de este escrito; preguntas y comentarios son bienvenidos! Dale me gusta a través de [@bonsaisearch] (http: // twitter.com/bonsaisearch) en Twitter, o [email protected] :-) –
¡Eso es prometedor! –