Los servicios sin servidor suenan tontos a primera vista, ¿pero finalmente ha llegado su día?
O como el niño dijo: “¡Mira, Ma … sin manos!” ¿Ha avanzado nuestra tecnología hasta ahora, nos hemos vuelto tan atrevidos, que estamos dispuestos a arriesgar nuestra presencia en línea y tal vez incluso nuestro negocio en una existencia sin servidor?
Funciones como servicio o FaaS es un desarrollo bastante reciente que proporciona una plataforma en la nube para que los clientes desarrollen, ejecuten y administren sus aplicaciones sin la necesidad de construir y mantener la infraestructura habitual.
La historia de la computación en la nube, al menos como una idea, se remonta a la década de 1950. De hecho, muchas de las cosas que alguna vez fueron consideradas como ciencia ficción por la mayoría de las personas ahora son un hecho. ¿Recuerdas 2001, una HAL de Space Odyssey? Hoy estamos utilizando la Inteligencia Artificial para muchas de las cosas que damos por sentado en nuestra vida diaria, como “¡Buscar en Google!”
FaaS es uno de los desarrollos más nuevos en computación en la nube, nos lo presentó por primera vez con AWS Lambda de Amazon en 2014. Al unir fuerzas con contenedores y microservicios, está catalizando un crecimiento aún más explosivo en el mundo de la tecnología de Internet de lo que nadie imaginaba.
Realmente es sorprendente lo rápido que se mueven las cosas en el mundo de la alta tecnología y la información. Tan recientemente como 2009, todavía había mucha preocupación sobre si la computación en la nube podría ser lo suficientemente segura para los datos corporativos. ¡Ahora estamos bancarizando (literalmente) en la nube!
¿Cómo funciona FaaS? ¡Abroche el cinturón de seguridad! Literalmente nunca he visto algo como esto. Esto es como la IA, excepto que está creciendo exponencialmente fuera de la vista, mientras esto sucede ante nuestros ojos. ¿Qué tan rápido está creciendo? ¡Hay publicaciones de blog creadas por personal de TI que me dicen que todos estamos teniendo dificultades para mantenernos al día!
Tome este, publicado el 4 de enero de este año, 2017. ¡Ni siquiera está en prosa completa, solo notas!
Simplemente recuperemos el aliento e intentemos definir FaaS . ¿Qué es la función como servicio? (Los chicos de TI pueden leer el último párrafo en ese sitio y respirar con calma …)
Ya hemos notado que es reciente y está evolucionando rápidamente. Permite a los clientes desarrollar, ejecutar y administrar sus aplicaciones sin tener que construir y mantener la infraestructura necesaria. Nos hemos atrevido a utilizar la frase descriptiva hasta ahora ridícula, servicios sin servidor.
Pongamos una cosa a descansar antes de que se convierta en una leyenda urbana o algún tipo de mito cibernético. Técnicamente no es realmente sin servidor. Los proveedores de la nube, por supuesto, se ejecutan en servidores. Sin embargo, para el usuario final, prácticamente no tiene servidor, porque el cliente no configura el servidor, ni implementa el código en el servidor ni lo administra.
FaaS, también conocido como informática sin servidor, se basa en la informática basada en eventos. En este modelo, los programas realizan su trabajo en respuesta a eventos desencadenantes. Un evento desencadenante es cualquier evento detectable previamente definido como significativo para el hardware o software del sistema, en contraste con un evento controlado por el tiempo. La arquitectura basada en eventos puede parecer muy compleja, pero ofrece ventajas significativas en velocidad, escala y, por supuesto, costo.
En pocas palabras, pero simplificado, la informática basada en eventos ofrece información exactamente cuando se necesita y no se rompe cuando se realizan cambios como lo hace en los sistemas codificados.
Una vez más, no es realmente sin servidor, pero la arquitectura FaaS nunca “ve” un servidor o VM. Lo hace mediante el uso de componentes existentes que ya están disponibles en la nube.
La lógica empresarial se implementa como funciones, mientras que el proveedor de la nube ejecuta la función después de un evento, como ya hemos mencionado. Otra forma de decir esto es que la función se ejecuta solo cuando y exactamente cuando ocurre un evento, lo que ofrece beneficios significativos para el cliente.
Los costos bajan mucho, porque la función que proporciona el contexto y la ejecución no se lleva a cabo en una VM, sino en un contenedor . Los contenedores solo se usan cuando son necesarios y luego se detienen. Si un contenedor no está disponible, se activa en segundos cuando es necesario y se invoca la función. La facturación es en microsegundos, en lugar de un período fijo. La facturación es por el tiempo utilizado por la función, lo que significa que hay aún más ahorros en un código más eficiente. Además, no hay VM para administrar, por lo que los costos operativos disminuyen.
Como autor, logiclogiclogic lo puso CloudRamblings , “Lambda … te factura solo por el tiempo que toma la función. Como resultado, el costo … puede ser un 95% menor que ejecutar un servidor durante todo el mes con el contenedor en él. No estoy bromeando. He visto algunos servicios que alquilan servidores en AWS que cuestan miles de dólares reducidos a menos de $ 10 . Los ahorros pueden ser increíbles “.
El escalado es automático y según sea necesario. Como se mencionó anteriormente, los contenedores se hacen girar según sea necesario y se detienen cuando se completa la función.
La tolerancia a fallas es alta, porque las funciones se activan incluso, en lugar de ser constantes. Las funciones se ejecutan cuando se activan por eventos, lo que significa que se inician en varias instancias, en lugar de ejecutarse continuamente en segundo plano.
La seguridad se basa solo en los permisos que permite el proveedor de la nube. No hay cuentas genéricas o máquinas virtuales para proteger. Se utiliza un enfoque de microservicios, lo que significa que cada función realiza una sola tarea, y solo cuando es convocada por el evento. FaaS se puede considerar el siguiente paso después de los contenedores, ya que si bien puede funcionar en una arquitectura que usa contenedores en su conjunto, funciona a un nivel aún más granular, sin el entorno de tiempo de ejecución completo de un contenedor requerido para la ejecución, ya que La función controlada por eventos solo requiere que se ejecute el código.
Si bien FaaS tiene muchas ventajas, todavía hay algunas cosas a tener en cuenta antes de asumir que hará algo por cualquier persona, incluso hacer donas para los técnicos de TI en servicio.
No es necesariamente una buena opción cuando se necesitan bajas latencias o largos tiempos de ejecución. Además, dado que FaaS es controlado por eventos o asíncrono, obviamente no es adecuado para tareas sincrónicas. Finalmente, debido a que las llamadas de las funciones son independientes entre sí, es necesario agregar un caché en el caso de que la aplicación requiera sesiones de seguimiento.
Esto es a principios de 2017. AWS Lambda salió a mediados de 2014. Todavía básicamente en su infancia, ya podemos ver grandes ventajas para el mercado móvil y el IoT, donde poco es mucho. Dos puntos decisivos son la escalabilidad de los microservicios desde la nada hasta el infinito y el hecho de que es muy adecuada para aplicaciones de ingeniería y asíncronas basadas en eventos. Es probable que esta tecnología sea realmente el comienzo de algo realmente sorprendente.
Cuando se eliminan los inconvenientes de FaaS, como la portabilidad a través de diferentes nubes, realizar un seguimiento de las funciones, adaptarse a los marcos de DevOps y algunos de los puntos anteriores, como ejecutar una operación asincrónica desde una función síncrona , etc., casi ciertamente tenemos que encontrar otro término más, pero llegaremos allí y más allá.
Más …
- ¿Qué aplicaciones aún faltan en la India?
- Al descargar e-Aadhaar, ¿por qué no se recibe la OTP en el móvil?
- Cómo saber si estoy bloqueado en WhatsApp
- ¿Cuáles son algunas oportunidades de servicio que se ven geniales en las solicitudes para la universidad?
- ¿Cuáles son las mejores aplicaciones de Android para descargar libros gratis?