Best Recipes Ever Just another WordPress site

marzo 14, 2015

Scalatra para impacientes: Como montar un proxy de Elastic Search en 3 minutos

mini tutorial de como instalar scala estilo shotgun. * Si ya tienes instalado Scalatra todavía lo haremos en menos tiempo. Si no este manual de como instalar Scalatra para impacientes   te ayudará a hacerlo en un par de minutos. Y ahora llega la mejor parte, tenemos dos opciones: a) hacerlo de cero. Buscar toda la documentación de Scalatra, Interface REST de Elastic Search, etc, etc. b) Clonar este proyecto de github, configurarlo y aprender como con unas cuantas lineas de Scalatra montamos un proxy de Elastic Search y los configuramos a nuestra medida y necesidades. Por supuesto vamos a escoger la opción B que nos mete en el partido en 3 minutos. 1) clonar el proyecto de ejemplo de proxy para Elastic Search usando Scalatra:

git clone https://github.com/nfb-onf/nfbsearch-scalatra.git
2) Configurar el URI de conexión a tu Servidor de elastic Search (linea 35)
$ cd NFBSearch-Scalatra
$ vi src/main/scala/ca/nfb/NFBSearchServlet.scala
3) hacer un build del proyecto y lanzarlo. $ ./sbt > container:start > browse Lo que más me gusta de usar Scalatra es lo sencillo que es implementar una acción:
  get("/search") {
    contentType = formats("json")
    val q:String = params("q")
    val httpClient = new HttpClient
    val response: Response = httpClient.get(new URL("http://localhost:9200/nfb_films/films/_search?q=" + q))
    response.body.asString
  }
Incluso alguien con poca experiencia con Scala/Scalatra sería capaz de leer y modificar este código. Es puro código suscinto sin ningún tipo de ceremonia, lo explica muy bien Javier Lafora, nuestro CTO en ASPGems en su post sobre por que usamos ruby y rails en ASPGems como tecnología web y tiene muchos puntos en común con «Por que usamos Scala para hacer Big Data en ASPGems» (este todavía no está escrito!!! 😉 )

«Scala is Love»

Agradecer a los usuarios de la cuenta de github «nfb-onf» que me ha ahorrado un par de horas del plan A con su maravillosa y gratuita contribución a la comunidad. Muchas Gracias!!! os debo unas cervezas!! ]]>

Powered by WordPress