Guía de tecnologías para servicios digitales
Escalabilidad
Es la capacidad de un sistema para satisfacer las necesidades del momento y manejar cantidades variables de trabajo como la suma o resta de recursos al sistema. Se trata de ser flexible con los recursos que consumen las aplicaciones o servicios digitales. Con un buen diseño, puedes quitar los recursos infrautilizados (sin comprometer el rendimiento ni la buena experiencia del usuario) y, al mismo tiempo, reducir costos. Asimismo, al agregar más recursos durante periodos de alto tráfico vas a mantener la satisfacción del usuario.
Por ejemplo, una app web es escalable cuando funciona bien con uno o muchos usuarios, al controlar los aumentos o las caídas drásticas en el tráfico. De esta manera, el servicio siempre es eficiente, los usuarios están satisfechos y se garantiza un funcionamiento correcto.
La escalabilidad es la característica más destacable de los servicios en la nube (Cloud Computing): tecnología que permite usar diferentes servicios, como el almacenamiento y procesamiento de datos o el uso de aplicaciones, en Internet, sin ocupar espacio en un disco duro. Esto permite ofrecer una mayor capacidad y ahorrar costos en equipos, ya que la ampliación y adaptación en sistemas cloud es más económica que los sistemas tradicionales.
Si deseas que el sistema crezca en el número de usuarios y mantenga su rendimiento actual, tienes que evaluar dos posibles opciones:
- Usar un hardware de mayor potencia
- Usar una mejor combinación de hardware y software
Tipos de escalabilidad
Existen dos tipos de escalabilidad, ambos presentan ventajas y desventajas, por lo que es importante que decidas en base al componente del sistema que quieres escalar.
Escalabilidad vertical: Elige está opción si quieres incrementar la capacidad de cómputo al migrar todo el sistema a un nuevo hardware más potente y eficaz que el actual. El resultado es similar a cuando añades una memoria o un disco duro a una computadora para soportar operaciones más complejas o incrementar su capacidad de almacenamiento. Las aplicaciones que funcionaban bajo la antigua arquitectura hardware no sufren con la migración. En el aspecto negativo, puede suponer un alto costo para la institución; además, llegará un momento en el que se presentará algún tipo de limitación para el hardware.
Escalabilidad horizontal: Opta por esta alternativa si quieres potenciar el rendimiento del sistema desde una perspectiva global. Puedes compararlo con el efecto que se da al añadir una nueva computadora a un programa de aplicación. Normalmente, se agregan equipos para dar más potencia a la red de trabajo. Con este tipo de escalabilidad, cuentas con un sistema al que puedes sumar recursos de manera casi infinita y adaptable al crecimiento de cargas de trabajo y nuevos usuarios. En el lado negativo, supone una gran modificación en el diseño, lo que conlleva a una carga extra en esta área y de reimplantación.