Categorías: Azure App Services Azure WebJobs Microsoft Azure Sin categoría

Introducción a Azure WebJobs | ¿Qué son y en qué nos pueden ayudar?

Azure WebJobs es, quizás, uno de los servicios de Microsoft Azure más desconocidos a pesar de que ya tiene más de un año de vida. Actualmente está inmerso dentro de Azure Web App Service que es la nueva denominación que ha dado Microsoft a un conjunto de servicios entre los que se encuentra Azure Web Sites y Azure Mobile Services entre otros. En este artículo que da comienzo a una pequeña serie, os haré una introducción a este servicio que a buen seguro os cambiarála percepción sobre la potencia de Azure Web sites.

¿Qué es Azure WebJobs?

Como ya he introducido, Azure WebJobs es un servicio dentro de Microsoft Azure que se encuentra dentro del conjunto Azure Web App Service y que nos permitirá ejecutar prácticamente cualquier operación que deseemos dentro del contexto de un Azure Web Site como como tareas programadas o contínuas. Desde un punto de vista más mundano y antiguo, podríamos asemejarlo a un servicio windows de los de antaño o un proceso «cron». Por ejemplo, podríamos programar el envío de correos programados como newletters o procesar información almacenada desde nuestro sitio web como caducar contenidos con fecha de caducidad.

¿Qué puedo ejecutar como WebJob?

Actualmente, se pueden establecer como WebJobs los archivos de los siguientes tipos:

  • .cmd, .bat, .exe (con windows cmd)
  • .ps1 (con powershell)
  • .sh (con bash)
  • .php (con php)
  • .py (con python)
  • .js (con node)

¿Qué tipos de WebJob se pueden crear?

Se pueden crear dos tipos de Web Job, de ejecución contínua o programados. Estos últimos a su vez pueden ser de ejecución una única vez (triggers), que se ejecuten periódicamente hasta una fecha de caducidad o que se ejecuten periódicamente de forma indefinida, por lo que podemos plantearnos por ejemplo un WebJob que esté «escuchando» una cola de Microsoft Azure y que cuando entre una información realicen su procesamiento y la transformen en lo que necesitemos.

¿Qué precio tienen?

Al ejecutarse dentro del context de un Web Site, los servicios WebJobs no tienen un precio propio sino que se aplica al propio del Web Site en base al tiempo de procesamiento, el ancho de banda que consuma, etc. con lo que el aumento de consume será, por lo general, mínimo.

¿Cómo puedo crear un WebJob?

Hay dos medios para crear un WebJob, desde Visual Studio y desde el portal antiguo de Microsoft Azure.

Crear un WebJob desde Visual Studio

Para crear un WebJob desde Visual Studio tenemos dos vías muy simples:

  • Ir a nuestro Web Site e indicarle que se le agrega un WebJob existente, pudiendo agregar un proyecto de la solución, o un agregar nuevo WebJob que nos creará un proyecto de consola para ello.

  • Ir al proyecto que queremos ejecutar como WebJob e indicarle que se publicará como WebJob

 

En cualquier caso, ambas opciones nos permitirán administrar cómo queremos ejecutar el WebJob con una ventana muy completa donde podemos establecer todos los parámetros, tipo de WebJob, periodicidad, etc.

 

Crear un WebJob desde el portal antiguo de Microsoft Azure

La otra vía para crear un WebJob es recurrir al portal antiguo de Microsoft Azure, seleccionar el WebSite al que queremos asignárselo y, en la pantalla «Trabajos Web» o «WebJobs», dependiendo del idioma, podremos agregar un fichero de la extensión que indiqué en un apartado superior.

 

Resumen

Azure WebJobs es una gran solución que nos permite extender nuestras Web Apps hasta el infinito permitiéndonos realizar prácticamente cualquier tarea que imaginemos y que pueda caber en el contexto de un servicio que se ejecuta en background. Es por ello que Microsoft ha puesto en nuestras manos nubes un servicio para crear aplicaciones web como no la hay en el mercado, así que no esperéis más y probadlo cuanto antes.

Compartir
Publicado por
Santiago Porras Rodríguez

Este sitio web utiliza cookies para que tengas la mejor experiencia de usuario. Si continuas navegando, estás dando tu consentimiento para aceptar las cookies y también nuestra política de cookies (esperemos que no te empaches con tanta cookie 😊)