4 tipos de downsizing que desconocías
El downsizing es, en tecnología, el proceso que se lleva a cabo para sustituir infraestructuras basadas en grandes máquinas, como mainframes, por sistemas basados en ordenadores con menos capacidad de proceso. En particular, muchos tipos de downsizing llevan parte de las tareas de computación a las máquinas cliente. De esta manera, los requisitos del servidor son menores. Esto favorece la escalabilidad, dado que todo lo que se puede ejecutar en los equipos de los usuarios, ya sean ordenadores personales o móviles y tablets, dispondrá de capacidad suficiente para funcionar de forma ágil si el dispositivo cumple con los requisitos mínimos. En ese sentido, el usuario pone a disposición del sistema sus recursos. Por lo tanto solo tendrá que escalarse la parte que se procesa en el servidor: código, bases de datos, capacidad de la red, etc.
Como ya habrás imaginado, una de las ventajas del downsizing es el ahorro de costes. Un servidor tipo mainframe es costoso y aumentar su capacidad también, mientras que el downsizing hace posible no utilizarlos. Por otro lado, algunos tipos de downsizing son idóneos para hacer la migración de tecnologías antiguas e incluso obsoletas a otras más actuales. Además, hace el mantenimiento más previsible. Todo gracias a que elimina posibles problemas y permite que el ciclo de vida de los dispositivos de usuario sirva para implementar mejoras que serían caras si hubiese que incrementar la capacidad de proceso de un mainframe para poder llevarlas a cabo.
Downsizing hacia arquitecturas basadas en microservicios
Se trata de una de las alternativas más populares, ya que ofrece muchas posibilidades enormemente atractivas. Por un lado, permite combinar todas las tecnologías actuales, desarrollando cada servicio en la más idónea. También simplifica el desarrollo simultáneo de diferentes funciones. Cada microservicio tiene una interfaz con el mundo exterior y los desarrolladores pueden simular las interacciones sin necesidad de que otros equipos hayan implementado los servicios con los que deben comunicarse.
La desventaja que puede presentar es la complejidad de migrar un software preexistente, diseñado con otra filosofía, a esta. Además, la infraestructura necesaria puede ser compleja. Por eso puede resultar menos atractivo en términos de tiempo necesario y de presupuesto.
Tipos de downsizing: aplicaciones cliente/servidor
Habitualmente, muchas aplicaciones heredadas utilizadas en el entorno corporativo hacen un uso muy básico de los recursos de las máquinas cliente. Más allá de mostrar una interfaz e interactuar con otros dispositivos de la red tales como impresoras o faxes, todo lo demás ocurre en el servidor. Sin embargo, se pueden llevar a cabo numerosas tareas más o menos complejas en un portátil estándar actual. De esta manera se descarga de trabajo al servidor.
Un ejemplo de esto sería la creación de informes a partir de los datos que ya tiene cargados el cliente. En vez de solicitar al servidor el informe en formato PDF, Excel o cualquier otro, el cliente puede utilizar los datos para rellenar una plantilla. Además, puede hacerlo sin necesidad de que el servidor sepa que esa operación se ha llevado a cabo.
Un caso interesante de aplicación cliente/servidor son las aplicaciones web actuales. Estas permiten que cualquier navegador ejecute aplicaciones complejas. Frameworks como Angular, React o Vue simplifican la creación de interfaces de usuario complejas, que no tienen mucho que envidiar a las aplicaciones nativas.
Esto permite, por una parte, que cualquier dispositivo sea capaz de ejecutarlas sin importar su sistema operativo o su tamaño de pantalla. Además, no es necesario instalar actualizaciones, ya que el servidor puede entregar siempre la versión más reciente de la interfaz. Con sistemas de integración y entrega continuas, se pueden añadir nuevas funciones o corregir fallos en cualquier momento de forma transparente para el usuario.
Tipos de downsizing: mediante virtualización
La virtualización de hardware es una de las grandes revoluciones de la tecnología en la última década. Tanto ha mejorado y ha avanzado que ya es posible virtualizar todo: desde un simple servidor, hasta disponer de todo un centro de datos virtualizado dentro de una infraestructura de terceros mucho más grande. Y con las posibilidades de escalado que esto proporciona.
En algunos casos se emplean estas tecnologías para deshacerse de un centro de datos en instalaciones propias (on premise), que posiblemente tenga máquinas obsoletas y, con seguridad, supone un elevado coste de mantenimiento. A cambio, se pueden levantar tantas máquinas como sean necesarias en un proveedor en la nube.
Una de las ventajas es que muchas limitaciones marcadas por el hardware desaparecen. Por ejemplo, en vez de disponer de un servidor para una base de datos crítica a la que deben acceder uno o más sitios web, es fácil migrar esa estructura a un servidor con más recursos que alojará la base de datos y a otro (u otros) servidores mucho más básicos que alojarán las webs.
Esto mejora tanto la eficiencia como la seguridad. La web no estará fuera de servicio porque haya una copia de seguridad programada de la base de datos (aunque puede que algunas funciones sí se vean ralentizadas), y los datos no se verán comprometidos por un fallo de seguridad del código de una de las webs. O, al menos, no con tanta facilidad.
Downsizing con contenedores
Una tecnología que tiene mucho que ver con la anterior, así como con los microservicios, son los contenedores. Un contenedor es una instancia de software que se ejecuta dentro del sistema operativo de la máquina física o virtualizada y que solo contiene lo mínimo imprescindible para el servicio a ejecutar.
Mediante su uso, y con la combinación de multitud de estos contenedores, se pueden montar estructuras de software muy complejas. Y lo que es más interesante en algunas situaciones, disponer de imágenes con las que levantar nuevos contenedores casi en el acto y solo variando algunos datos de configuración.
La ventaja del uso de contenedores es que permiten aislar cada componente de software del resto, pero también que es muy fácil escalar un sistema (por ejemplo, añadir nodos a un cluster para aumentar su rendimiento) o extenderlo. Por ejemplo, creando una infraestructura base que se clona para cada nuevo cliente.
Hay otras técnicas y tecnologías que permiten aprovechar las ventajas del downsizing, pero las que hemos mencionado son quizá las que resulta más útil tener presentes. Si tienes alguna duda sobre los tipos de downsizing, y no sabes si es lo que más conviene a tu empresa, consulta con expertos en el tema para asesorarte antes de dar el paso.
Comments (0)