Servidor de producción

Un servidor de producción es un servidor que se utiliza para alojar contenido y aplicaciones de sitios web para su implementación en un entorno en vivo. Es el servidor principal en el que los usuarios finales acceden a los sitios web y las aplicaciones web y también se lo denomina servidor activo.

Un servidor de producción puede ser una máquina dedicada, un servidor virtual, una PC básica o varias máquinas dispersas geográficamente. Para pequeñas empresas y aplicaciones simples, todas las actividades involucradas en la implementación pueden realizarse en una sola computadora. En la implementación de software a nivel empresarial, se suelen utilizar varios servidores para las etapas necesarias para crear y trabajar en software y entregar aplicaciones a los usuarios finales.

Una arquitectura de implementación común es desarrollo, pruebas, puesta en escena, producción (a menudo expresado como DEV, TEST, STAGING, PROD or DTSP). El entorno de desarrollo es la computadora donde se crean los programas de software y se realizan los cambios en la codificación, generalmente la estación de trabajo del desarrollador. En esta arquitectura, cuando los desarrolladores han terminado con la aplicación, el servidor de desarrollo la implementa en el servidor de prueba / control de calidad. Después de la prueba, el software se implementa en un servidor de ensayo, donde todos los elementos de un sitio web o aplicación se ensamblan de manera similar de la forma en que aparecerán en vivo. Una vez que todo parece correcto y funciona correctamente en el servidor de ensayo, el software se implementa en el servidor de producción, lo que lo hace accesible para los usuarios finales.

Tradicionalmente, los entornos de desarrollo y producción han estado separados por varias razones. Por ejemplo, un problema con software no probado, como un bucle infinito o una fuga de memoria, podría obstaculizar el funcionamiento del servidor de producción y causar problemas a los usuarios finales. Otra preocupación son los errores que se muestran a los usuarios.

Como resultado, en entornos de cualquier tamaño, el desarrollo en el servidor de producción se ha desalentado enérgicamente. Recientemente, sin embargo, se han intentado otros enfoques para eliminar etapas de la implementación del software y hacer que los procesos sean más eficientes. Un enfoque utilizado en algunos entornos de DevOps es el marcado de funciones, que permite a los desarrolladores seleccionar ciertas funciones que estarán disponibles para usuarios específicos. Los indicadores de funciones pueden hacer posible el desarrollo en el servidor de producción con funciones desactivadas para la mayoría de los usuarios hasta que se haya demostrado que están listas para funcionar para todos los usuarios.