software1

Comprueba si Serverless es adecuado para ti


La fascinación de Serverless atrae a varias empresas y equipos de desarrollo.

Un informe reciente de la Fundación Cloud Foundry indica que el 51 por ciento de los encuestados usan o evalúan servicios sin servidor, y el 18 por ciento los anticipa a gran escala. Para los equipos de desarrollo, se trata de eliminar la complejidad operativa y centrarse en lo que es realmente importante, el código.

"Administrar la infraestructura es una complejidad ocasional. Solo lo haces porque tienes que hacerlo. La gestión de la infraestructura no tiene sentido económico. Pasar a una solución más paga elimina la responsabilidad, las preocupaciones y la complejidad operativa ", dijo Viktor Klang, Director Técnico Adjunto de Lightbend (19659005), una compañía de plataforma de microservicios basada en la nube.

CONTENIDO RELACIONADO: Sin servidor: una mala recurrencia

Sin embargo, sin servidor no es solo una solución para arreglar y olvidar. Es un modelo y una forma de pensar diferentes, y las compañías deben mirar más allá de cualquier beneficio destacado para evaluar si cambiar a sin servidor tiene sentido para ellos, dijo Chris Parlette, jefe de servicios en la nube para la compañía de servicios en la nube [19659006] ParkMyCloud .

"Tiene sus casos de uso, pero no resolverá todo, y no creo que sea un caso de uso perfecto para cualquier cosa que intente hacer". Para las empresas y las grandes organizaciones, es importante calificarlas como una opción, pero es solo otra opción. Es otra herramienta en la caja de herramientas ", dijo.

Una mirada más cercana a Serverless
Serverless se ha vuelto muy atractivo, ya que es la próxima abstracción tecnológica, según Tolga Tarhan, Director de Tecnología de Cloud Native Managed Services Provider Onica ,

En el pasado, los equipos instalaron servidores en centros de datos. Luego, unos años más tarde, usaron máquinas virtuales para todo. Unos años más tarde, comenzaron a cambiar a la nube como el siguiente paso para comprar y mantener hardware. Este es el siguiente paso en este viaje, explicó Tarhan.

Sin servidores, los equipos de desarrollo ya no tienen que preocuparse por el sistema operativo o la máquina virtual. Solo tiene que asegurarse de que su código se ejecute en el momento adecuado. "Realmente no les importan los sonidos de un sistema operativo: parchear, realizar copias de seguridad, administrar, configurar … todo lo que desaparece, en cambio, simplemente escriben el código que necesitan para su caso de uso y lo escriben en el correcto "Reduce la complejidad y los costos, no paga por los servidores que están inactivos, solo paga los milisegundos que gasta en recursos informáticos y tiene más tiempo para desarrollar un equipo de desarrollo y desarrollo".

Sin embargo, los beneficios de costos también pueden ser engañosos: Parlette puede generar costos ocultos si no sabe dónde o cómo quiere estar sin servidor, lo que puede ser muy costoso, Serverless también lo hace depender de su proveedor de nube, porque controla el aprovisionamiento de recursos y la responsabilidad de la infraestructura de fondo.

La buena noticia es que siempre Cada vez hay más empresas sin servidor y cada vez hay más datos disponibles sobre cuánto costará exactamente esto y cómo el mantenimiento continuo realmente busca un entorno sin servidor. Por ejemplo, "Si el tráfico está aumentando bruscamente, ahora puede entender lo que eso significa. Si el tráfico es plano, puede evaluarlo mejor. Es una comparación de manzanas con manzanas con un modelo de servidor más tradicional ", dijo Parlette.

Implementación de arquitectura óptima
El mejor momento para usar sin un servidor es iniciar nuevas aplicaciones desde cero con un enfoque basado en microservicios, donde tiene pequeños servicios y fragmentos de código que no son interdependientes; y ejecutar scripts de uso poco frecuente que, según Parlette, no necesitan ejecutarse constantemente en un servidor.

Parlette declaró que no sugeriría adoptar aplicaciones existentes o aplicaciones monolíticas y llevarlas a un enfoque sin servidor. "No reescribiría una aplicación completa para usar sin un servidor, sin al menos evaluar a fondo el ROI". La razón por la que digo eso es que a menudo te sientas allí y reescribes tu aplicación, pero no progresas. No implementan nuevas características. No empujan la pelota hacia adelante ", dijo.

Si pasa todo el tiempo reescribiendo aplicaciones solo para ejecutarlas en un backend diferente, el cliente no puede aprovecharlas. "Simplemente reescribir algo para que funcione sin servidores no tiene sentido", agregó Parlette. Por esta razón, no ve que los servidores tradicionales pronto serán reemplazados completamente por la arquitectura sin servidor.

Sin embargo, Tarica de Onica declaró que los servidores sin servidor no deben considerarse una ruta de migración. En cambio, es un campo verde, una opción neta para el desarrollo de nuevas aplicaciones o un gran reactor. "Es posible que pueda reutilizar parte del código, pero realizará una operación seria en su aplicación", dijo.

"La pregunta es más sobre el valor", agregó Lightbends Sound. "¿Cuál es la inversión para pasar a una pieza de tecnología en particular y cuáles son los costos de integración en las soluciones existentes? Esta decisión siempre debe tomarse caso por caso. "

John Graham-Cumming, Director de Tecnología de Internet Security and Services Company Cloudflare trata sobre la transición de la arquitectura de la aplicación de un enfoque cliente-servidor de dos niveles a un enfoque de tres niveles. Graham-Cumming explicó que al agregar un tercer nivel (Middle Ground), las empresas se están acercando al usuario, tienen menos latencia y son mucho más interactivas. Este tercer nivel está en el borde de una plataforma sin servidor. Dado que el código de la aplicación se puede ejecutar desde cualquier lugar sin un servidor, el código también se puede ejecutar en ubicaciones de borde. Con edge computing, los equipos de desarrollo pueden llevar la informática lo más cerca posible de la fuente de datos. Esto es importante para reducir la latencia y el uso de ancho de banda, que a veces puede ser problemático para servidores sin servidores. "The Edge es muy rápido y tiene una excelente conexión a Internet", dice Graham-Cumming.

"La gente piensa que Serverless está destinado solo a una pequeña parte de su aplicación o a una pequeña configuración. No sabes exactamente qué está pasando aquí, y está cambiando fundamentalmente cómo se crean las aplicaciones y qué veremos en el futuro. ¿La gente está pensando en la aplicación de tres pasos? ", Dijo.

Serverless 2.0
Una de las áreas donde Serverless no funciona bien es el estado de su aplicación. De acuerdo con el sonido de Lightbend, las aplicaciones o funciones sin servidor como un servicio no deben tener estado, es decir, no contienen memoria.

Por ejemplo, si realiza una imagen de cambio de tamaño que cambia y cambia el tamaño de la imagen, no importa si hay mil millones de imágenes que se cambian de tamaño en paralelo porque no son interdependientes. Sin embargo, si su aplicación tiene un estado y requiere memoria para saber qué hacer y cómo hacerlo, en un mundo sin servidor, no funcionará si las funciones se habilitan simultáneamente con la misma memoria. "Tienes una pelea por el almacenamiento. Se pueden procesar funciones en paralelo o no, y si es así, el resultado sigue siendo cierto porque otra función puede haber actualizado esa información antes de que la otra pueda continuar o ver el cambio.

Otra forma de verlo es pensar en un carrito de compras. Si es una tienda en línea, desea que sus clientes tengan una vista unificada de su carrito de compras, independientemente del dispositivo en el que compren. Si realiza un cambio en su teléfono, desea que vean este cambio cuando inicien sesión en su computadora.

"Para hacer eso posible, uno necesita un estado. Debe administrar lo que hay en ese carrito y tener requisitos de consistencia claros, pero también tiene más puntos de entrada potenciales en su estado ", dijo Klang.

Como las empresas han tratado tradicionalmente de navegar el problema del carrito de compras, empujar el problema a la base de datos es pero eso solo crea más problemas. "Siempre que tenga múltiples activaciones de características para la misma información, ajuste cada característica en una transacción de base de datos para resolver conflictos. Sin embargo, el problema aquí es el conflicto, ya que la base de datos ahora tiene que responder a la coordinación de la transacción. Dicho sonido. "También significa descubrir cómo escalar su base de datos, qué datos están dónde y cómo coordinar el acceso a esos datos cuando los divide". Proyecto fuente, CloudState .

"Al proporcionar al ecosistema nativo de la nube microservicios con estado, datos / transmisión rápidos y el poder de las tecnologías reactivas, elimina la barrera definitiva para una plataforma sin servidor para el desarrollo de aplicaciones de uso general, verdadera escalabilidad elástica y computación empresarial La transferencia eficiente de datos está en el camino del despliegue global en el ecosistema de Kubernetes ", dijo Jonas Bonér, Director de Tecnología de Lightbend.

CloudState intenta resolver el problema del estado sin servidor pasando el estado a la función en lugar de que la función acceda al estado. "CloudState garantiza que solo se procese una activación simultáneamente para la misma información", dijo Klang. "Al coordinar el sistema de administración de la base de datos, aumenta la competencia en la base de datos a medida que comienza a escalar sus funciones. Las personas piensan que pueden hacer más al paralelizar la carga, pero en realidad pueden hacer menos porque esperará IO. La coordinación lleva más tiempo, mientras más cosas luchan por algo. Al tratar estos datos y el acceso a los datos por separado, podemos averiguar si la base de datos es el cuello de botella o si el procesamiento de la función es el cuello de botella, y luego es mucho más fácil tomar una decisión de escala.

Actualmente CloudState se dirige a casos de uso con estado general, como: Por ejemplo, modelos de capacitación y entrega de aprendizaje automático, predicción y recomendación en tiempo real de baja latencia, sesiones de usuario, transacciones distribuidas, espacios de trabajo colaborativos y gestión del flujo de trabajo.

"Las funciones sin estado son una gran herramienta que tiene su lugar en el kit de herramientas de computación en la nube, pero permiten a Serverless lograr la gran visión que la industria exige de un mundo sin servidor, al tiempo que nos permite crear aplicaciones avanzadas en tiempo real centradas en datos ya no puede ignorar el problema más difícil en los sistemas distribuidos: administrar el estado de sus datos ", dice el sitio web CloudState.



Software trazabilidad de Cea Ordenadores

Comentarios desactivados en Comprueba si Serverless es adecuado para ti