stringtranslate.com

Cuello de botella (software)

En ingeniería de software , un cuello de botella se produce cuando la capacidad de una aplicación o un sistema informático está limitada por un único componente, como el cuello de una botella que ralentiza el flujo general de agua. El cuello de botella tiene el menor rendimiento de todas las partes de la ruta de transacción.

Los diseñadores de sistemas intentan evitar los cuellos de botella mediante un esfuerzo directo para localizar y ajustar los cuellos de botella existentes en una aplicación de software. Algunos ejemplos de cuellos de botella de ingeniería que aparecen incluyen los siguientes: un procesador , un enlace de comunicación y una entrada/salida de disco . Un sistema o aplicación se encontrará con un cuello de botella si el trabajo llega a un ritmo comparativamente más rápido en relación con otros componentes de procesamiento. [1] Según la teoría de las restricciones , mejorar las ocurrencias del punto crítico de la restricción del cuello de botella mejora la velocidad de procesamiento general del software. Una estipulación de la teoría que invita a la reflexión revela que mejorar la eficiencia de una etapa de proceso particular en lugar de la restricción puede generar incluso más retraso y disminuir las capacidades de procesamiento generales de un software.

Es imposible eliminar los cuellos de botella por completo ya que siempre hay un componente que limita el rendimiento general, por lo que el objetivo habitual es mejorar el componente cuello de botella para que todo el sistema pueda lograr el rendimiento deseado.

El proceso de localizar cuellos de botella (también denominados "puntos calientes", secciones del código que se ejecutan con mayor frecuencia, es decir, tienen el mayor número de ejecuciones) se denomina análisis de rendimiento . La reducción se logra con el uso de herramientas especializadas, como analizadores de rendimiento o perfiladores , cuyo objetivo es hacer que determinadas secciones del código funcionen de la manera más eficaz posible para mejorar la eficiencia algorítmica general .

Véase también

Referencias

  1. ^ Wescott, Bob (2013). El libro sobre el rendimiento de cada computadora, Capítulo 3: Leyes útiles . CreateSpace . ISBN 978-1482657753.