Cinco formas de acelerar las aplicaciones virtuales

Autor: Laura McKinney
Fecha De Creación: 2 Abril 2021
Fecha De Actualización: 1 Mes De Julio 2024
Anonim
💻 Como acelerar tus Máquinas Virtuales en VirtualBox y VMware
Video: 💻 Como acelerar tus Máquinas Virtuales en VirtualBox y VMware

Contenido


Fuente: Viktorus / Dreamstime.com

Para llevar:

Aprenda cinco técnicas para acelerar las aplicaciones virtuales sin romper el banco.

Una de las frustraciones de volverse virtual para aplicaciones y escritorios es el rendimiento. Nadie quiere esperar más de un segundo o dos para que aparezca una aplicación después del lanzamiento. Como usuarios, esperamos que nuestras aplicaciones aparezcan inmediatamente después de hacer doble clic en el icono. No nos damos cuenta de lo que sucede en segundo plano para entregar esas aplicaciones entre el servidor, a través de firewalls, a través de equilibradores de carga, por aire o por cables a nuestros escritorios y dispositivos móviles, ni nos importa. Nuestra paciencia colectiva se ha agotado con las promesas de una tecnología mejor, más rápida y más segura, y es hora de que los vendedores y el personal de soporte les brinden un momento de "disgusto o silencio". A su vez, los proveedores y el personal de soporte comparten nuestro dolor y han respondido con algunas tecnologías de aceleración que brindan rendimiento en o cerca de los niveles instalados localmente.


Para los usuarios, se trata de la velocidad, pero a diferencia de los usuarios, los arquitectos, los administradores de sistemas y los CIO no buscan una respuesta más rápida a los doble clics del usuario; también buscan escalabilidad, seguridad mejorada y mayores expectativas de vida tecnológica que nunca. Al final, los usuarios son los críticos más duros del proveedor y el soporte y, por esa razón, la exploración de técnicas y tecnologías de aplicaciones virtuales está a la mano. Este artículo examina cinco formas de acelerar las aplicaciones virtuales. Las cinco soluciones no están en un orden particular, pero todas se centran en una de las tres áreas clave para la optimización y la aceleración: infraestructura, código de aplicación y ancho de banda.

Optimización de WAN y LAN

Puede referirse a la optimización de WAN y LAN como una solución de ancho de banda, donde el objetivo final es poner más información y más datos en una tubería de red de una manera más eficiente. Debido a que el rendimiento de la aplicación es tan crítico para los usuarios finales, existen algunos métodos ingeniosos para entregar más contenido en menos tiempo, como la creación de una red de entrega de contenido (CDN) que esencialmente acerca los datos al consumidor o al usuario final. Acercar los datos al usuario disminuye la latencia porque los datos tienen que atravesar menos "saltos" o redes para llegar a su destino. La mayoría de los proveedores de servicios en la nube ya cuentan con CDN para ayudar a los propietarios de aplicaciones a entregar contenido distribuido cerca de sus consumidores.


El equilibrio de carga optimiza el ancho de banda al distribuir las solicitudes de los clientes entre múltiples servidores o entre múltiples ubicaciones para compartir mejor la carga de la entrega de aplicaciones. Los equilibradores de carga mejoran la velocidad de entrega de la aplicación al eliminar los embotellamientos que ocurren con las solicitudes de los usuarios de una sola aplicación. Pero también aumentan la confiabilidad al poder entregar la aplicación de manera eficiente a un servidor que no está sobrecargado con otras solicitudes.

Aumentar el ancho de banda sin procesar entre las aplicaciones y los clientes parece una mejora obvia para acelerar la entrega de aplicaciones. ¿Quién puede argumentar que una conexión de red gigabit entre la infraestructura de la aplicación y la computadora del cliente es algo malo? Incluso una aplicación mal diseñada y concebida recibirá un aumento significativo del rendimiento al aumentar el ancho de banda entre la fuente y el destino.

La compresión de datos y el uso de tipos de medios comprimidos como JPEG, MPEG-4 y MP3 pueden tener un impacto significativo en la entrega de aplicaciones. La compresión de datos de contenido basado, lo que significa HTML, CSS y JavaScript, puede resultar en una reducción del 30 por ciento o más en el tiempo de carga.

SSD y matrices flash

Las unidades SSD y las matrices flash parecen ser la nueva tecnología de "ir a" para cualquier tipo de mejora del rendimiento de la aplicación. Es cierto que el almacenamiento en estado sólido es mucho más rápido que los discos giratorios, pero también es significativamente más costoso. La solución podría ser ver el uso de SSD de manera diferente, como caché para datos "activos" en lugar de datos en reposo. Los SSD pueden entregar datos mucho más rápido que los discos giratorios, pero parte de esa eficiencia se pierde en la traducción a través de la red y a través de varios componentes de red. Sin embargo, si uno usa la llamada "memoria caché flash" para aprovechar la velocidad de SSD en la que almacenar la información almacenada en caché, los resultados son impresionantes. Intel informa "hasta 12 veces más rendimiento en el procesamiento de bases de datos transaccionales y hasta 36 veces más rápido en el procesamiento de cargas de trabajo virtualizadas intensivas de E / S".

Los SSD para el almacenamiento en caché de datos tienen sentido debido a la velocidad a la que los datos pueden recuperarse y colocarse en la memoria. Y si los SSD se usan únicamente para propósitos de almacenamiento en caché, entonces se tendrá que comprar una cantidad significativamente menor para satisfacer los aumentos de rendimiento resultantes. (Para obtener más información sobre el almacenamiento, consulte Cómo optimizar su solución de almacenamiento empresarial).

Sin errores, sin estrés: su guía paso a paso para crear software que cambie su vida sin destruir su vida

No puede mejorar sus habilidades de programación cuando a nadie le importa la calidad del software.

GPU virtuales

Pregúntele a cualquiera que use un programa CAD, un software de edición de video o incluso una aplicación de administración de proyectos donde quiera que esas aplicaciones se carguen y escuchará un coro de "localmente". Convertir estas aplicaciones intensivas en gráficos en un entorno virtual significa un desastre hasta el lanzamiento de la tecnología de unidad de procesamiento gráfico virtual (GPU).

Las GPU virtuales finalmente permiten que cualquier carga de trabajo se coloque en una máquina virtual. Los holdings CAD de la vieja escuela ahora se han asimilado, al igual que los editores de video y diseñadores gráficos. Incluso aquellos que trabajan en tres dimensiones ahora tienen una presencia virtual gracias a las GPU virtuales.

Lo que hizo posible esta tecnología es que las tarjetas GPU especiales, compatibles con los sistemas host de máquinas virtuales, se instalan en esos sistemas host y luego sus atributos de hardware se abstraen o virtualizan para que puedan ser utilizados por las máquinas virtuales.

Software de rendimiento optimizado

Los administradores de sistemas enojados y frustrados a menudo le dirán que arreglar el código no es su trabajo. Sin embargo, el problema omnipresente es que los desarrolladores pueden ser de primera categoría en la programación de una aplicación, pero no pueden tener ni idea ni deseo de obtener una pista sobre la optimización del código para el rendimiento.A menudo, la actitud es que más RAM, discos más rápidos o CPU más potentes solucionarán cualquier problema relacionado con el rendimiento que pueda existir en el código, y esto es cierto hasta cierto punto. Alternativamente, arreglar el código es mucho menos costoso y mucho más fácil de resolver que reconstruir una infraestructura simplemente para acelerar aplicaciones mal escritas.

Hay quienes, como el pionero de la informática Donald Knuth, quien dijo sobre la optimización del código de la computadora, "si optimizas todo, siempre serás infeliz". A pesar de las opiniones del Sr. Knuth, se debe realizar y tolerar la optimización del código para una cantidad equilibrada de mejora. . Pero, ¿qué pasa con los programas comerciales que compra e implementa para sus usuarios? Por ejemplo, el conjunto de Microsoft Office de hoja perenne es un conjunto estándar de aplicaciones que los administradores de sistemas deben poner a disposición de los usuarios locales y remotos.

En el caso de los programas comerciales sobre los que los administradores no tienen influencia, deben aplicar una estrategia de mejora del rendimiento de varias capas. El almacenamiento en caché de bits de aplicaciones comunes será la mejor tecnología del administrador para acelerar la entrega de grandes aplicaciones a los usuarios.

Almacenamiento en caché

Cada vez que lea o escuche los términos precarga, preprocesamiento o precompilación, es probable que el escritor o el orador se refieran a algún tipo de almacenamiento en caché. El almacenamiento en caché de aplicaciones generalmente se refiere a la carga de ciertos elementos estáticos y algunos elementos dinámicos en un búfer de memoria para que pueda recuperarse fácilmente a pedido. Los únicos bits entregados a través de la tubería son aquellos que tienen que ver específicamente con el usuario u otros datos dependientes del tiempo o la sesión. Todo lo demás se almacena en memoria caché.

El almacenamiento en caché ejerce menos presión sobre el almacenamiento, el ancho de banda de la red y las CPU. Los datos esperan en la memoria hasta que se les solicite y luego continúan su viaje mucho más corto hasta el usuario final. La mayoría de las tecnologías combinan el almacenamiento en caché con la ubicación para entregar contenido más rápido. En otras palabras, los datos comunes, es decir, los datos comunes a todos los usuarios, se colocan en los CDN antes mencionados y luego se entregan a los usuarios que están cerca de los datos solicitados. Algunas soluciones llegan al caché local de datos en sitios remotos o satelitales para que esos bits comunes residan donde se consumen y no tengan que ser transferidos a través de la WAN o un enlace de Internet.

El almacenamiento en caché suele ser un método de aceleración de aplicaciones preferido porque es mucho menos costoso que las soluciones de rendimiento comparable que se basan en mejoras de infraestructura. (Para obtener más información sobre el almacenamiento en caché, consulte ¿Qué escritura es la correcta? Una mirada a los métodos de almacenamiento en caché de E / S).

Resumen

Quizás la regla general básica cuando se intenta optimizar o acelerar las aplicaciones virtuales en cualquier entorno es intentar primero el almacenamiento en caché y luego complementar esa estrategia con otras tecnologías. El almacenamiento en caché es la solución menos costosa y también la menos invasiva. El mejor consejo es comprar suficiente RAM para el almacenamiento en caché de memoria y SSD para el almacenamiento en caché de datos en caliente. Intente mantener los costos manejables, pero recuerde que cuando gasta dinero en infraestructura y en software, puede amortizarlo durante la vida útil de la tecnología y distribuirlo por usuario para facilitar la digestión de la administración. Al final, mantenga a sus usuarios productivos y felices y lo mantendrán con un empleo remunerado.