Ir al contenido principal

Continuous Delivery vs Continuous Deployment vs Continuous Integration - ¿Espere que?

Si usted es como la mayoría de la gente y estas palabras de moda le son confusas porque a menudo son mal utilizadas. Voy a tratar de disipar parte de la confusión que rodea a estos procesos y la forma en que todos pueden trabajar juntos para proporcionar un ambiente optimo para administradores, desarrolladores y clientes por igual.

Continuous Integration

Integración continua es la práctica de combinar el trabajo de desarrollo con una rama maestro de forma constante, esto se hace con el fin de que se pueda probar los cambios y la prueba de los cambios de trabajo con otros cambios. Si es un poco confuso pero la idea aquí es poner a prueba su código tan a menudo como sea posible para detectar problemas de forma temprana. La mayor parte del trabajo es realizado por pruebas automatizadas, y esta técnica requiere un marco de pruebas unitarias. Normalmente existe un servidor de compilación para realizar estas pruebas, por lo que los desarrolladores pueden seguir trabajando mientras se realizan las pruebas.

Continuous Delivery

Continuous Delivery, es la entrega continua de código para un entorno una vez que el desarrollador siente que el código está listo para enviar. Esto podría ser un ambiente como UAT o estadificación o podría ser la de producción. La idea es que usted como desarrollador entregue código para un entorno a una base de usuarios, ya se trate de QA o clientes para su revisión e inspección continua.

Esto es similar al de integración continua, pero puede alimentar a las pruebas de lógica de negocio. Las pruebas unitarias no pueden disfrutar de toda la lógica de negocio, sobre todo diseñar cuestiones, por lo que esta etapa o proceso puede ser utilizado para estas necesidades. Usted también podría estar entregando código para Código de Revisión. Código puede ser dosificado para la liberación o no después de la UAT o control de calidad se realiza.
La base de la entrega continua es pequeños lotes de trabajo alimentadas continuamente con el paso siguiente se consumirán más fácilmente y encuentran más problemas desde el principio. Este sistema es más fácil para el desarrollador porque los problemas se presentan al desarrollador antes de que la tarea se ha marchado de su memoria.

Continuous Deployment

Despliegue continuo es el despliegue o la liberación de código para ambiente de producción tan pronto como esté listo. No hay grandes lotes en Staging ni largo proceso UAT que es directamente antes de producción. Cualquier prueba se realiza antes de la fusión a la rama de la línea principal y se realiza en entornos de producción. La rama de producción es siempre estable y lista para ser desplegada por un proceso automatizado. El proceso automatizado es clave, ya que debe ser capaz de llevar a cabo por cualquier persona en cuestión de minutos. Después de un despliegue, los registros deben ser inspeccionados para determinar si sus métricas clave se ven afectadas, positiva o negativamente. Algunos de estos indicadores pueden incluir los ingresos, el usuario de inscripción, el tiempo de respuesta o el tráfico, preferentemente estas métricas se grafican para el consumo fácil. Despliegue continuo requiere de integración continua y Entrega Continua - de lo contrario, usted es sólo la codificación de vaquero y obtendrá errores en el lanzamiento.


Una vez que se ha mudado a un proceso de despliegue continuo, usted tendrá que tener varias piezas de la automatización en su lugar. Usted debe automatizar su integración Build continua Server y entrega continua de estadificación, así como tener la capacidad de desplegar automáticamente a ambiente de Producción.

cd process diagram resized 600

Comentarios

Entradas populares de este blog

¿Por qué me quedo con Drupal?

Me quedo con Drupal, y listaré el ¿Por qué? : Porque a parte de ser un CMS ( ¿Que es un CMS? ) es también un CMF (Content Management Framework – Entorno de desarrollo). Es muy escalable, logran casi absolutamente todo lo que se desee. Su API o documentación es demasiado completa. Su comunidad es activa y siempre se encuentran cosas nuevas ( drupal ). El perfil de Programador puro es más alto y escaso que el de “Site builder”. En consecuencia las horas de trabajo se pagan mejor. Es utilizado por grandes compañias como Ubuntu , The economist , MTV , etc.  Grandes Capacidades SEO: Drupal fue diseñado desde la base para ser amigable con los motores de búsqueda. Estabilidad: Drupal es escalable sin esfuerzo y es estable incluso cuando sirve a miles de usuarios a la vez. Extremadamente Flexible: ¿Quiere un blog sencillo con una página frontal estática? Drupal  puede hacerlo. ¿Quiere un poderoso backend que pueda soportar cientos de miles de páginas y millones ...

¿Qué es drush?

DRUSH = DRUpal SHell Es la interface para línea de comandos de Drupal, es el lugar donde podemos manejar Drupal por comando en consola. - La consola ssh: SSH ( S ecure SH ell, en español: intérprete de órdenes segura) es el nombre de un protocolo y del programa que lo implementa, y sirve para acceder a máquinas remotas a través de una red. (1) - Esta interface hace mucho mas óptimo el desarrollo de páginas web, ya que lo que se demora en descargar un modulo de forma tradicional para Drupal que es entre 5 y 10 minutos, con Drush el tiempo sería de máximo de 1 minuto . ¿Como se instala Drush? Depende del sistema operativo: Ubuntu: sudo apt-get install drush Windows:  Descargar e instalar composer : https://getcomposer.org/Composer-Setup.exe .  Inicio>ejecutar escribir cmd, dentro de cmd escribir composer -V  Instalamos drush desde la consola: composer global require drush/drush:dev-master Revisamos que haya quedado instalado: drush status , si quedo ...

WEB 3.0

La web 3.0 consiste en un movimiento social cuyo objetivo es crear aplicaciones que puedan acceder a internet sin la necesidad de un navegador. La Web 3.0 fué referenciada por primera vez en el año 2006 en un artículo redactado por Jeffrey Zeldman, un crítico de la previa versión llamada  Web 2.0. Visionarios y expertos en las tecnologías de la comunicación propulsaron desde diferentes campos la evolución de la Web 2.0 buscaban hacerla más inteligente, versátil y sobre todo más interactiva. Ésta web facilita la accesibilidad de las personas a la información, y quita la dependencia de un dispositivo específico; consigue resultados más complejos e interactivos que van más allá de simplemente compartir información, ya que está desarrollada para una interacción más inteligente y productiva. Gracias a su diseño con parámetros de alto rendimiento realiza procesos de manera más óptima y eficiente. Es una web orientada fundamentalmente a la integración universal de las personas, el bien...