Noticias

Compruébelo usted mismo: demostrando los beneficios de usar una imagen de Ubuntu bien diseñada con una tienda ASP.NET

¿Está buscando una manera de mejorar el rendimiento y la confiabilidad de sus sistemas de pago y compras en línea durante la temporada navideña? ¡Mira las imágenes pulidas de Ubuntu! En esta serie de blogs, he discutido los beneficios de usar estas imágenes livianas y eficientes para aplicaciones en contenedores. En esta segunda entrega, le mostraré cómo poner en práctica estos beneficios con una aplicación de compras navideñas ASP.NET. Prepárese para adornar los pasillos (y sus contenedores) con Ubuntu.

Experiencia de compras navideñas

¿Listo para comenzar tus compras navideñas? Primero, revisaré una aplicación de demostración de compras en línea creada con ASP.NET y un contenedor de Ubuntu bien diseñado. Luego, también les presentaré el entorno utilizado para realizar las pruebas y comparaciones.

Captura de pantalla de la aplicación de demostración eShop ASP.NET 6 en ejecución vista desde el navegador

Para nuestra aplicación de demostración, utilicé la muestra eShop ASP.NET Core 6.0 solicitud de referencia Creado por los equipos de Microsoft. La aplicación se divide en tres componentes: servidor API, servidor web y base de datos del servidor SQL.

yo creo Las dos bifurcaciones de esta aplicación de demostración., uno con el contenedor tradicional de Ubuntu y el otro con el nuevo contenedor de Ubuntu que creamos para ASP.NET 6. Luego comparé las propiedades y el rendimiento de las dos versiones utilizando un entorno virtualizado clonado con recursos limitados.

Configurando mi primer laboratorio de pruebas para recopilar algunas bases para comparar con Ubuntu clásico

Mi laboratorio tiene 4 GB de RAM, 20 GB de disco paso múltiple Máquina virtual con 2 CPU virtuales que ejecutan Ubuntu 22.04. Usé el mismo entorno limpio para ambas versiones de nuestra aplicación de demostración para garantizar una comparación justa. Mediante el uso de un entorno virtualizado clonado con recursos limitados, pude comparar con precisión las propiedades y el rendimiento de las dos versiones sin introducir sesgos. También me aseguré de mantener condiciones operativas constantes (tanto como fuera posible) durante las pruebas.

LEER  Computadora RISC-V integrada, asequible y del tamaño de un pulgar, llega a Linux

Ahora, desglosemos los beneficios de un Ubuntu bien diseñado y mostremos cómo pueden hacer que su experiencia de compras navideñas sea más rápida, segura y escalable.

Ubuntu compacto es más pequeño y ahorra más

Sin duda, el mayor beneficio de usar imágenes de contenedores de Ubuntu bien diseñadas es su tamaño más pequeño. ¡Este es probablemente el más fácil de explicar! Compararemos el tamaño de las imágenes de contenedor utilizadas para implementar nuestra demostración en línea de eShop, utilizando tanto la imagen cincelada de Ubuntu como la imagen base habitual de Ubuntu.

La siguiente tabla muestra los tamaños de imagen sin comprimir en megabytes para los dos componentes principales:

tipo de imagen básica Tamaño de imagen «API» tamaño de imagen «web»
Versión de soporte a largo plazo de Ubuntu 22.04 284 MB 317 MB
Ubuntu cincelado 22.04 181 MB (-36%) 250 MB (-veintiuno%)

Como puede ver en la tabla anterior, la imagen cincelada basada en Ubuntu es 100 MB más pequeña que la imagen tradicional basada en Ubuntu, lo que ahorra espacio en disco y ancho de banda al descargar y ejecutar la imagen. Para las aplicaciones implementadas a escala, especialmente en entornos informáticos distribuidos y de borde, esto puede generar ahorros significativos en los costos de almacenamiento e implementación.

Al mostrar el tamaño de la imagen de Docker en mi entorno de laboratorio de pruebas, ¡el tamaño cincelado es 100 MB más pequeño!

Si bien me gustaría ahorrar más, los componentes web de nuestra aplicación de demostración utilizan SqlClient de ASP.NET, que requiere la característica de globalización y el paquete de globalización ICU que lo acompaña. Como resultado, tuve que usar una base de Ubuntu bien diseñada que incluía el paquete ICU, que era un 40 % más grande que el Ubuntu bien diseñado que se usó para la imagen ASP.NET. Disponible en MCRSin embargo, noté tiempos de compilación más rápidos debido al ahorro de ancho de banda de la red al extraer la imagen base cincelada más pequeña.

Manténgase seguro con Ubuntu elegante

Las imágenes cinceladas de Ubuntu se crean utilizando componentes de alta calidad del sistema operativo Ubuntu y se actualizan de acuerdo con el mismo ciclo de lanzamiento y la misma garantía de soporte. Ubuntu tiene un historial comprobado de recibir correcciones de errores críticos en menos de 24 horas. Además, el tamaño más pequeño de la imagen OCI de Ubuntu significa menos oportunidades para que los atacantes exploten (superficie de ataque reducida).

Además, una imagen de Ubuntu bien diseñada no contiene bibliotecas, herramientas o componentes adicionales que normalmente se encuentran en las distribuciones de Linux. Esto significa que no hay administradores de paquetes, shells u otras utilidades disponibles para los posibles piratas informáticos. Finalmente, las imágenes de Ubuntu preconstruidas para .NET y ASP.NET no incluyen el «raíz” usuarios, inhibiendo la escalada de privilegios para posibles atacantes.

Echa un vistazo a Rich Lander (@runfaster2000) y mi presentación conjunta en la .NET Developers Conference 2022 para demostrar el concepto de las ventajas de seguridad mejoradas de Ubuntu:

Uso de .NET con contenedores de Ubuntu cincelados | Conferencia .NET 2022

Corre más rápido con Ubuntu

Además de ser más pequeña y más segura, una imagen de Ubuntu pulida puede mejorar el rendimiento de las aplicaciones en la nube y en contenedores.

El tiempo de inicio y el uso de recursos para cada tipo de contenedor se muestran en la siguiente tabla:

tipo de imagen básica Hora de inicio uso de CPU uso de memoria CPU (servidor web estresado) Memoria (servidor web estresado)
ubuntu 4.608s ~0.1% 76-81 MB 115% 218 MB
Ubuntu cincelado 3.721 segundos ~0.0% 67-79 MB 118% 172 MB

Para medir el tiempo de inicio, cronometré la duración del comando docker-compose up -d, todas las imágenes se almacenan en caché localmente. Esta no es una métrica perfecta, solo tiene en cuenta el tiempo de creación y arranque del contenedor. Pero como puede ver, ya es un buen indicador de que la imagen cincelada comienza más rápido (casi un 20% más rápido).

Para medir el consumo de recursos, simplemente usé el comando docker stats. Después de que se inició la aplicación, primero comparé la memoria y el uso de la CPU.Luego hice una prueba de estrés de diligencia debida del componente web, usando cURL para generar 500 solicitudes, hasta 5 en paralelo (honor Ivo en dev.to solicitar opiniones). Como puede ver, la adopción de contenedores Ubuntu ingeniosos reduce el uso de memoria (7%), especialmente en situaciones estresantes (21%).

Haga una prueba de esfuerzo de nuestra aplicación de demostración usando el comando homebrew cURL bash y las estadísticas de docker

Esto significa que las aplicaciones pueden estar en funcionamiento más rápido y de manera más eficiente en el sistema host. ¡Esto significa una experiencia de usuario más rápida y receptiva para nuestros clientes de compras navideñas en línea!

Celebra la temporada con Ubuntu elegante

En esta serie de blogs, muestro los beneficios clave de usar una imagen de Ubuntu bien diseñada en la práctica mediante la creación de una aplicación de compras en línea simple usando el tiempo de ejecución de ASP.NET. Aunque mis medidas pueden no ser las más precisas, la mejora de Ubuntu a un Ubuntu bien diseñado como imagen base para .NET/ASP.NET es bastante impresionante. Todo esto prácticamente no ha cambiado y proporciona una experiencia de desarrollador continua y sin inconvenientes.

Mientras miramos hacia el nuevo año, lo animo a que pruebe las imágenes de Ubuntu bien diseñadas y vea los beneficios para sus propias aplicaciones. Ya sea que sea un desarrollador, un administrador de sistemas o simplemente desee obtener más información sobre la tecnología de contenedores, la imagen ordenada de Ubuntu puede brindarle una plataforma estable, eficiente y segura para implementar y ejecutar sus aplicaciones.

Así que no deje que la temporada navideña sea un problema; use una imagen de Ubuntu bien diseñada para mantener sus aplicaciones en contenedores funcionando sin problemas y garantizar que sus clientes tengan una experiencia feliz. ¡Felices fiestas y feliz boxeo!

LEER  Los 9 mejores clientes de IRC para Linux en 2021

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba