Workflow, Deployment, High Availability y Seguridad Flashcards
¿Qué significa la sigla ACID en el contexto de las bases de datos?
ACID significa Atomicidad, Consistencia, Aislamiento y Durabilidad. Estas propiedades garantizan la integridad de las transacciones en las bases de datos.
¿Cuál de las propiedades de ACID garantiza que una transacción se ejecuta por completo o no se ejecuta en absoluto?
La propiedad de Atomicidad garantiza que una transacción se ejecuta por completo o no se ejecuta en absoluto.
En el contexto de las operaciones en bases de datos y servicios web, ¿qué significa que una operación es idempotente?
Una operación idempotente se puede repetir varias veces sin cambiar el resultado más allá de la primera ejecución.
¿Por qué es importante que las operaciones en sistemas distribuidos sean idempotentes?
La idempotencia garantiza que las operaciones sean seguras de repetir, lo que es crucial en sistemas distribuidos donde las solicitudes pueden experimentar fallos y reintentos
¿Qué es el protocolo Two-Phase Commit (2PC) en el contexto de bases de datos distribuidas?
El protocolo Two-Phase Commit es un mecanismo de coordinación utilizado para garantizar la consistencia en transacciones distribuidas.
¿Qué es el patrón SAGA en arquitectura de software?
El patrón SAGA es un patrón de diseño que se utiliza para gestionar transacciones distribuidas en sistemas de microservicios. Divide las transacciones largas en pequeñas operaciones atómicas.
¿Cuál es la principal diferencia entre el patrón SAGA y el protocolo Two-Phase Commit (2PC) en términos de consistencia de datos en sistemas distribuidos?
La principal diferencia es que SAGA se enfoca en transacciones distribuidas de larga duración y utiliza compensaciones en lugar de bloquear recursos, mientras que 2PC es más rígido y puede
llevar a bloqueos prolongados
¿Qué es una máquina virtual y para que se utiliza?
Una máquina virtual es un entorno de software que simula una computadora física, lo que permite ejecutar múltiples sistemas operativos en una única máquina física.
¿Qué es un contenedor y para que se utiliza?
Un contenedor es una unidad de software que incluye una aplicación y todas sus dependencias, lo que facilita el despliegue y la ejecución de aplicaciones en entornos aislados.
¿Cuál es el objetivo principal de la integración continua (CI) en el desarrollo de software?
El objetivo principal de la integración continua es automatizar las pruebas y la integración de código a medida que los desarrolladores lo modifican, lo que garantiza que el software se mantenga en un estado funcional constantemente.
¿Qué implica la entrega continua (CD) en el ciclo de desarrollo de software?
La entrega continua implica automatizar la entrega de software probado y listo para producción, lo que acelera el ciclo de desarrollo y permite entregas frecuentes y confiables.
¿Cuál es el patrón de despliegue “Canary”?
El patrón “Canary” implica lanzar una nueva versión de software a un pequeño grupo de usuarios o servidores para evaluar su rendimiento y estabilidad antes de implementarla por completo.
¿Qué es un “Feature Toggle” en el contexto del despliegue de software?
Un “Feature Toggle” es un mecanismo que permite habilitar o deshabilitar funcionalidades específicas en una aplicación sin modificar el código fuente, lo que facilita el control de
características.
¿Cuál es el propósito del patrón de despliegue “Green-Blue”?
El patrón “Green-Blue” implica tener dos entornos de producción idénticos: uno activo (Green) y otro de respaldo (Blue). Facilita las implementaciones sin tiempo de inactividad.
¿Qué es Kubernetes y para qué se utiliza?
Kubernetes es una plataforma de código abierto para automatizar la implementación, el escalado y la administración de aplicaciones en contenedores.