{"id":29177,"date":"2023-06-13T07:19:00","date_gmt":"2023-06-13T07:19:00","guid":{"rendered":"https:\/\/www.applivery.com\/?p=29177"},"modified":"2023-06-14T14:04:59","modified_gmt":"2023-06-14T14:04:59","slug":"migracion-a-gcp-madrid-para-mejor-escalabilidad-y-seguridad","status":"publish","type":"post","link":"https:\/\/www.applivery.com\/es\/blog\/tech\/migracion-a-gcp-madrid-para-mejor-escalabilidad-y-seguridad\/","title":{"rendered":"C\u00f3mo Applivery ha migrado a GCP Madrid para mejorar la escalabilidad y la seguridad"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"29177\" class=\"elementor elementor-29177 elementor-29152\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-29e9fbe e-flex e-con-boxed e-con e-parent\" data-id=\"29e9fbe\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0f38e5b elementor-widget elementor-widget-heading\" data-id=\"0f38e5b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Nuestros or\u00edgenes<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-89e7ac4 elementor-widget elementor-widget-text-editor\" data-id=\"89e7ac4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Como muchas startups, Applivery naci\u00f3 como un \u00abside-project\u00bb. Se trataba de un servicio sencillo pero ambicioso, centrado en la distribuci\u00f3n de aplicaciones m\u00f3viles de forma eficaz y simplificada.<\/p>\n<p>Dados sus humildes or\u00edgenes, <strong>los costes del servicio deb\u00edan estar muy controlados<\/strong>, por lo que decidimos empezar desplegando las primeras versiones en el proveedor Cloud m\u00e1s asequible y sencillo del momento, <a href=\"https:\/\/www.digitalocean.com\/\" target=\"_blank\" rel=\"noopener\">DigitalOcean<\/a>, <span style=\"letter-spacing: 0.1px;\">y utilizar tambi\u00e9n un sistema de almacenamiento sencillo basado en<\/span> <a style=\"font-family: Outfit, sans-serif; font-size: 18px; font-weight: 300; line-height: var( --e-global-typography-text-line-height ); letter-spacing: 0.1px;\" href=\"https:\/\/aws.amazon.com\/s3\/\" target=\"_blank\" rel=\"noopener\">AWS S3<\/a><span style=\"letter-spacing: 0.1px;\">.<\/span><\/p>\n<p><span style=\"letter-spacing: 0.1px;\">El servicio se concibi\u00f3 originalmente como <strong>un \u00fanico monolito<\/strong> cuyos procesos, bases de datos y servicios se ejecutaban en un \u00fanico droplet.<\/span><\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ad0f891 elementor-widget elementor-widget-image\" data-id=\"ad0f891\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"536\" src=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/digitalocean-and-aws.png\" class=\"attachment-large size-large wp-image-29162\" alt=\"digitalocean and aws\" srcset=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/digitalocean-and-aws.png 1024w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/digitalocean-and-aws-300x201.png 300w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/digitalocean-and-aws-768x515.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" title=\"digitalocean and aws | Applivery\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-894537a elementor-widget elementor-widget-text-editor\" data-id=\"894537a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Sin embargo, <strong>aquel proyecto sencillo pero ambicioso se convirti\u00f3 poco a poco en una plataforma que deb\u00eda dar soporte a decenas de clientes y miles de usuarios activos diarios<\/strong>. Adem\u00e1s, la ambici\u00f3n del proyecto empez\u00f3 a incorporar numerosas ideas de desarrollo, lo que dio lugar a una extensa hoja de ruta que se extender\u00eda durante los 2 a\u00f1os siguientes. <strong>Desarrollar un producto de esas dimensiones en un \u00fanico droplet empezaba a no parecer tan buena idea<\/strong>. Por eso decidimos ampliar el equipo y reconstruir el proyecto desde cero.<\/p>\n<p>En ese momento, <strong>decidimos pasar a una arquitectura orientada a microservicios, separando el Frontend de las APIs.<\/strong> Todos los servicios se desplegar\u00edan en contenedores <a href=\"https:\/\/www.docker.com\/\" target=\"_blank\" rel=\"noopener\">Docker<\/a> a trav\u00e9s de un sofisticado pipeline de integraci\u00f3n continua apoyado sobre <a href=\"https:\/\/circleci.com\/\" target=\"_blank\" rel=\"noopener\">CircleCI<\/a>. En un ejercicio de simplificaci\u00f3n del proceso de transici\u00f3n entre la versi\u00f3n antigua y la nueva, decidimos mantener DigitalOcean como proveedor de computaci\u00f3n y DNS, pero aprovechamos la ocasi\u00f3n para externalizar la base datos (<a href=\"https:\/\/www.mongodb.com\/atlas\/database\" target=\"_blank\" rel=\"noopener\">MongoDB Atlas<\/a>), el sistema de colas (<a href=\"https:\/\/www.cloudamqp.com\/\" target=\"_blank\" rel=\"noopener\">CloudAMQP<\/a>), y el registro de im\u00e1genes de Docker (<a href=\"https:\/\/aws.amazon.com\/ecr\/\" target=\"_blank\" rel=\"noopener\">AWS ECR<\/a>).<\/p>\n<p>Este nuevo sistema de microservicios se puso en funcionamiento a finales de 2019 y hac\u00eda uso de <a href=\"https:\/\/dokku.com\/\" target=\"_blank\" rel=\"noopener\">Dokku<\/a> para la orquestaci\u00f3n de los contenedores.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3bce5c9 elementor-widget elementor-widget-image\" data-id=\"3bce5c9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"536\" src=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/digitalocean-and-aws2-min.png\" class=\"attachment-large size-large wp-image-29247\" alt=\"digitalocean and aws\" loading=\"lazy\" srcset=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/digitalocean-and-aws2-min.png 1024w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/digitalocean-and-aws2-min-300x201.png 300w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/digitalocean-and-aws2-min-768x515.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" title=\"digitalocean and aws2-min | Applivery\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-360ea73 elementor-widget elementor-widget-text-editor\" data-id=\"360ea73\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Sin embargo, aunque hab\u00edamos realizado un gran esfuerzo de reconstrucci\u00f3n y rearquitectura, segu\u00edamos sirviendo todo el tr\u00e1fico desde una \u00fanica m\u00e1quina virtual que hac\u00eda de cuello de botella. Por esa raz\u00f3n, poco tiempo despu\u00e9s, <strong>decidimos dar el salto a <a href=\"https:\/\/kubernetes.io\/\" target=\"_blank\" rel=\"noopener\">Kubernetes<\/a>.<\/strong><\/p>\n<p>DigitalOcean segu\u00eda siendo el proveedor Cloud m\u00e1s asequible para un servicio administrado de <span style=\"letter-spacing: 0.1px;\">Kubernetes<\/span>, as\u00ed que no lo dudamos y migramos el orquestador de contenedores, a\u00f1adiendo numerosas mejoras t\u00e9cnicas, arquitect\u00f3nicas y de seguridad por el camino, entre las que cabr\u00eda destacar:<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-785bd48 elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"785bd48\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Migraci\u00f3n a TypeScript.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Infraestructura como c\u00f3digo con Pulumi.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Despliegues versionados con Helm.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Autoescalado de m\u00e1quinas y servicios.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Certificados autorrenovables a trav\u00e9s de LetsEncrypt.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Despliegues con zero-downtime y auto-rollbacks.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Agrupaci\u00f3n geogr\u00e1fica de los servicios de computaci\u00f3n y servicios externos (MongoDB Atlas, CloudAMQP, etc) en Frankfurt.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Migraci\u00f3n de la gesti\u00f3n de dominios de DigitalOcean a CloudFlare como servicio de DNS y Firewall.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d4853ca elementor-widget elementor-widget-text-editor\" data-id=\"d4853ca\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>As\u00ed mismo, para proporcionar el servicio de dominios personalizados en las Enterprise App Stores hac\u00edamos uso de otra m\u00e1quina virtual con una IP el\u00e1stica, debido a que DigitalOcean no prove\u00eda de un NAT gateway para controlar la IP de salida de los workers.<\/p>\n<p>En ese momento, la arquitectura ten\u00eda el siguiente aspecto:<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8b02ba6 elementor-widget elementor-widget-image\" data-id=\"8b02ba6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"607\" src=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Screenshot-2023-05-31-at-212200-1024x777.png\" class=\"attachment-large size-large wp-image-29200\" alt=\"\" loading=\"lazy\" srcset=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Screenshot-2023-05-31-at-212200-1024x777.png 1024w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Screenshot-2023-05-31-at-212200-300x228.png 300w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Screenshot-2023-05-31-at-212200-768x583.png 768w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Screenshot-2023-05-31-at-212200-1536x1165.png 1536w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Screenshot-2023-05-31-at-212200.png 1806w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" title=\"Screenshot 2023-05-31 at 212200 | Applivery\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-915f401 elementor-widget elementor-widget-text-editor\" data-id=\"915f401\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Por fin hab\u00edamos logrado alcanzar una plataforma confiable, autoescalable y f\u00e1cilmente mantenible, con la que poder enfocar nuestros esfuerzos en la evoluci\u00f3n de nuestro producto.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-69d314b elementor-widget elementor-widget-spacer\" data-id=\"69d314b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-47fcaac elementor-widget elementor-widget-heading\" data-id=\"47fcaac\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Creciendo m\u00e1s r\u00e1pido de lo previsto\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fddf798 elementor-widget elementor-widget-text-editor\" data-id=\"fddf798\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Todo este sistema constru\u00eddo principalmente sobre DigitalOcean y apoyado por AWS funcion\u00f3 decentemente y con unos costes muy controlados durante muchos meses. Sin embargo, <strong>a medida que el volumen de clientes crec\u00eda y en consecuencia, el tr\u00e1fico, comenzamos a sufrir eventuales problemas<\/strong> que no pod\u00edamos controlar ni prever:<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6a174e4 elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"6a174e4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">El &nbsp;<span style=\"font-weight: bolder\">sistema de resoluci\u00f3n de DNS<\/span> &nbsp;de los workers experimentaba problemas ocasionales no manejables por nosotros.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"><span style=\"letter-spacing: 0.1px\">Sufrimos&nbsp;<\/span> <span style=\"letter-spacing: 0.1px;font-weight: bolder\">ca\u00eddas del control plane de Kubernetes<\/span>, <span style=\"letter-spacing: 0.1px\">bien por actualizaciones forzosas o por problemas internos de DigitalOcean.<\/span><span style=\"letter-spacing: 0.1px\"><\/span><\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"><span style=\"letter-spacing: 0.1px\">En ciertos momentos&nbsp;<\/span>, <span style=\"letter-spacing: 0.1px;font-weight: bolder\">la velocidad de transferencia entre nuestra red en DigitalOcean y AWS S3 se reduc\u00eda hasta pocos KB\/segundo,<\/span> <span style=\"letter-spacing: 0.1px\">lo que provocaba que el servicio de subida de builds fuera inutilizable durante largos per\u00edodos de tiempo.<\/span><span style=\"letter-spacing: 0.1px\"><\/span><\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ef659ad elementor-widget elementor-widget-text-editor\" data-id=\"ef659ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>En ese momento (principios de 2021) est\u00e1bamos implementando lo que ser\u00eda la mayor evoluci\u00f3n de Applivery: <a href=\"https:\/\/www.applivery.com\/es\/blog\/product-update\/mdm-de-aplicaciones\/\" target=\"_blank\" rel=\"noopener\">Applivery Device Management<\/a>. Estos evolutivos nos hicieron pasar tambi\u00e9n por <strong>una arquitectura completa de nuestro <a href=\"https:\/\/www.applivery.com\/es\/blog\/noticias\/presentamos-nuestro-nuevo-y-potente-panel-de-control\/\" target=\"_blank\" rel=\"noopener\">dashboard de gesti\u00f3n<\/a> y del <a href=\"https:\/\/www.applivery.com\/es\/blog\/noticias\/nuestra-nueva-y-audaz-marca\/\" target=\"_blank\" rel=\"noopener\">branding<\/a><\/strong> de la compa\u00f1\u00eda para orientarla a una mejor experiencia de usuario.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4c462de elementor-widget elementor-widget-image\" data-id=\"4c462de\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"534\" src=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/04\/iMac-in-the-office-with-a-man_dashboard-desktop-min-1024x683.png\" class=\"attachment-large size-large wp-image-26973\" alt=\"\" loading=\"lazy\" srcset=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/04\/iMac-in-the-office-with-a-man_dashboard-desktop-min-1024x683.png 1024w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/04\/iMac-in-the-office-with-a-man_dashboard-desktop-min-300x200.png 300w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/04\/iMac-in-the-office-with-a-man_dashboard-desktop-min-768x512.png 768w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/04\/iMac-in-the-office-with-a-man_dashboard-desktop-min-1536x1024.png 1536w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/04\/iMac-in-the-office-with-a-man_dashboard-desktop-min.png 1920w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" title=\"iMac-in-the-office-with-a-man_dashboard-desktop-minpng | Applivery\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f1de973 elementor-widget elementor-widget-text-editor\" data-id=\"f1de973\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Sin embargo, a pesar de todos los esfuerzos, <strong>la infraestructura hab\u00eda resultado ser compleja y por momentos, inestable<\/strong>. Nuestros ambiciosos planes de expansi\u00f3n y la evoluci\u00f3n del producto se ve\u00edan gravemente penalizados por la <strong>inversi\u00f3n de tiempo en resoluci\u00f3n de problemas e incidencias<\/strong>.<\/p>\n<p>Necesit\u00e1bamos tener <strong>mayor control sobre el servicio administrado de Kubernetes y era imprescindible mejorar la estabilidad de la red<\/strong>. Adem\u00e1s, dada la expansi\u00f3n del servicio y del roadmap de producto quer\u00edamos aprovechar para continuar mejorando nuestra plataforma en los siguientes aspectos cr\u00edticos para el negocio:<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-38d5323 elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"38d5323\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Reducir el n\u00famero de servicios y dependencias externas.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Mejorar la seguridad de todas las conexiones y comunicaciones entre sistemas.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Incrementar la observabilidad para prevenir y anticipar potenciales problemas.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Buscar una regi\u00f3n geogr\u00e1fica m\u00e1s af\u00edn a nuestro servicio y que nos garantizara poder soportar la demanda actual y futura.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-40e8dbe elementor-widget elementor-widget-spacer\" data-id=\"40e8dbe\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6c03328 elementor-widget elementor-widget-heading\" data-id=\"6c03328\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">El salto a Google Cloud Platform\n\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e9436 elementor-widget elementor-widget-image\" data-id=\"b4e9436\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"450\" src=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/maxresdefault-3-1024x576.jpg\" class=\"attachment-large size-large wp-image-29203\" alt=\"\" loading=\"lazy\" srcset=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/maxresdefault-3-1024x576.jpg 1024w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/maxresdefault-3-300x169.jpg 300w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/maxresdefault-3-768x432.jpg 768w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/maxresdefault-3.jpg 1280w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" title=\"maxresdefault-3 | Applivery\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c0b40fb elementor-widget elementor-widget-text-editor\" data-id=\"c0b40fb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Llegados a este punto, hab\u00edamos decidido que quer\u00edamos abandonar DigitalOcean y <strong>movernos a un hyperscaler m\u00e1s adecuado para nuestra realidad<\/strong>.<\/p>\n<p>Tras varias semanas de ejecuci\u00f3n de pruebas de concepto en Amazon Web Services (AWS), Google Cloud Platform (GCP) y Azure y, a pesar de que la experiencia del equipo t\u00e9cnico en los \u00e1mbitos de Cloud se centraba principalmente en AWS, nos<strong> inclinamos por GCP<\/strong>. Los motivos fueron varios:<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-771e18b elementor-widget elementor-widget-heading\" data-id=\"771e18b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Mayor control sobre el servicio administrado de Kubernetes\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-289ca12 elementor-widget elementor-widget-text-editor\" data-id=\"289ca12\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>La <strong>calidad y facilidad de uso de Google Kubernetes Engine (GKE)<\/strong> nos sorprendi\u00f3 desde el primer momento que lo probamos. La cantidad de opciones y observabilidad que ofrece por defecto sobre el cluster era la mejor que hab\u00edamos probado hasta el momento.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2dfdbe4 elementor-widget elementor-widget-heading\" data-id=\"2dfdbe4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Mejorar la estabilidad de la red\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-48caa60 elementor-widget elementor-widget-text-editor\" data-id=\"48caa60\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Google nos ofrece la opci\u00f3n de usar <strong>su propia red con conectividad global, que proporciona mucho mejor rendimiento y latencia que la red est\u00e1ndar<\/strong>, lo que se traduce en una mejor experiencia para todos los usuarios en cualquier parte del mundo.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-87903f1 elementor-widget elementor-widget-heading\" data-id=\"87903f1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Reducir el n\u00famero de servicios externos\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0fe8174 elementor-widget elementor-widget-text-editor\" data-id=\"0fe8174\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Tanto AWS como GCP nos ofrec\u00edan una gran cantidad de opciones que nos permitir\u00edan internalizar algunos de los servicios externos pero debido a nuestra <strong>fuerte dependencia con el ecosistema Android,<\/strong> ya est\u00e1bamos integrados con algunos servicios de GCP (como Pub\/Sub o la Android Management API). A todo esto hab\u00eda que sumarle que GCP nos ofrec\u00eda otros servicios \u00fanicos como BigQuery, Analytics, Workspace o Maps que planeamos usar en el futuro cercano.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1924ae8 elementor-widget elementor-widget-heading\" data-id=\"1924ae8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Securizar todas las conexiones\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1831530 elementor-widget elementor-widget-text-editor\" data-id=\"1831530\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Debido a las limitaciones que experiment\u00e1bamos en DigitalOcean, ten\u00edamos un amplio margen de mejora en los aspectos relativos a seguridad. Identificamos que GCP nos ayudar\u00eda en dos aspectos principales: en primer lugar, la funcionalidad de <strong>VPC peering<\/strong> con importaci\u00f3n y exportaci\u00f3n autom\u00e1tica de rutas simplificar\u00eda en gran medida nuestra integraci\u00f3n con MongoDB Atlas. En segundo lugar, nos ofrec\u00eda la capacidad de <strong>autenticaci\u00f3n sin intercambio de claves desde <a href=\"https:\/\/github.com\/features\/actions\" target=\"_blank\" rel=\"noopener\">GitHub Actions<\/a> mediante Workload Identitie<\/strong>s, evitando la exposici\u00f3n de cualquier tipo de claves de acceso.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ee768a5 elementor-widget elementor-widget-heading\" data-id=\"ee768a5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Incrementar la observabilidad\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-10666e6 elementor-widget elementor-widget-text-editor\" data-id=\"10666e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Anteriormente ten\u00edamos integrado <a href=\"https:\/\/grafana.com\/\" target=\"_blank\" rel=\"noopener\">Grafana<\/a> y <a href=\"https:\/\/prometheus.io\/\" target=\"_blank\" rel=\"noopener\">Prometheus<\/a> para gestionar la monitorizaci\u00f3n y observabilidad, servicios que funcionaban dentro del cluster y que ten\u00edamos que mantener. <strong>Con GKE esto ya no era necesario,<\/strong> debido a que la propia consola ya ofrec\u00eda todo lo que necesit\u00e1bamos, como acceso a logs, visibilidad de nodos y pods, dashboards de gr\u00e1ficas o alertas.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e8a1952 elementor-widget elementor-widget-heading\" data-id=\"e8a1952\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Cambiar a un regi\u00f3n m\u00e1s id\u00f3nea para nuestro servicio<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e5d1fa2 elementor-widget elementor-widget-image\" data-id=\"e5d1fa2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"469\" src=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Blog-Image-GCP-Madrid-min.png\" class=\"attachment-large size-large wp-image-29206\" alt=\"\" loading=\"lazy\" srcset=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Blog-Image-GCP-Madrid-min.png 1024w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Blog-Image-GCP-Madrid-min-300x176.png 300w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Blog-Image-GCP-Madrid-min-768x450.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" title=\"Blog Image GCP Madrid-min | Applivery\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e6282a6 elementor-widget elementor-widget-text-editor\" data-id=\"e6282a6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Finalmente, <strong>GCP lanzaba su regi\u00f3n aqu\u00ed en Madrid, Espa\u00f1a (<span style=\"text-align: var(--text-align); background-color: var( --e-global-color-5c495ae );\">europe-southwest1<\/span>)<\/strong><strong style=\"text-align: var(--text-align); font-family: var( --e-global-typography-9d5f275-font-family ),Sans-serif; font-size: var( --e-global-typography-9d5f275-font-size ); letter-spacing: var( --e-global-typography-9d5f275-letter-spacing ); word-spacing: var( --e-global-typography-9d5f275-word-spacing ); background-color: var( --e-global-color-5c495ae ); color: var( --e-global-color-text );\">, as\u00ed que sigiendo nuestra marca de identidad, y tras algunas pruebas, nos decantamos por ella.<\/strong><span style=\"text-align: var(--text-align); font-family: var( --e-global-typography-9d5f275-font-family ),Sans-serif; font-size: var( --e-global-typography-9d5f275-font-size ); font-weight: var( --e-global-typography-9d5f275-font-weight ); letter-spacing: var( --e-global-typography-9d5f275-letter-spacing ); word-spacing: var( --e-global-typography-9d5f275-word-spacing ); background-color: var( --e-global-color-5c495ae ); color: var( --e-global-color-text );\">. Tras las pruebas conclu\u00edmos que mejoramos sustancialmente la latencia en toda Am\u00e9rica sin afectar a Europa central o el resto del mundo compar\u00e1ndolo con nuestra regi\u00f3n anterior situada en Frankfurt.<\/span><\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-514fe1b elementor-widget elementor-widget-heading\" data-id=\"514fe1b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u00bfC\u00f3mo fu\u00e9?\n\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4d8844a elementor-widget elementor-widget-image\" data-id=\"4d8844a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"410\" src=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Captura-de-Pantalla-2023-05-31-a-las-184353-1024x525.png\" class=\"attachment-large size-large wp-image-29170\" alt=\"\" loading=\"lazy\" srcset=\"https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Captura-de-Pantalla-2023-05-31-a-las-184353-1024x525.png 1024w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Captura-de-Pantalla-2023-05-31-a-las-184353-300x154.png 300w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Captura-de-Pantalla-2023-05-31-a-las-184353-768x394.png 768w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Captura-de-Pantalla-2023-05-31-a-las-184353-1536x788.png 1536w, https:\/\/www.applivery.com\/wp-content\/uploads\/2023\/05\/Captura-de-Pantalla-2023-05-31-a-las-184353-2048x1051.png 2048w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" title=\"Captura de Pantalla 2023-05-31 a las 184353 | Applivery\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-da12c78 elementor-widget elementor-widget-text-editor\" data-id=\"da12c78\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Empezamos rehaciendo nuestras recetas de <a href=\"https:\/\/www.pulumi.com\/\" target=\"_blank\" rel=\"noopener\">Pulumi<\/a> para levantar un nuevo entorno pre-productivo completo, haciendo migraciones a m\u00faltiples servicios de GCP, entre ellos:<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7c7069c elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"7c7069c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"><p>Cambiamos el sistema de colas de RabbitMQ por GCP Pub\/Sub.<\/p><\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"><p><span style=\"letter-spacing: 0.1px\">Movimos las im\u00e1genes Docker de los contenedores y los charts de Helm desde AWS ECR y GCP ChartMuseum a Artifact Registry.<\/span><span style=\"color: var( --e-global-color-text );font-family: var( --e-global-typography-text-font-family ), Sans-serif;font-size: var( --e-global-typography-text-font-size );font-weight: var( --e-global-typography-text-font-weight );letter-spacing: var( --e-global-typography-text-letter-spacing );background-color: transparent\"><\/span><\/p><\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"><p><span style=\"letter-spacing: 0.1px\">Asignamos&nbsp;<\/span> <span style=\"letter-spacing: 0.1px;font-weight: bolder\">IPs el\u00e1sticas al balanceador y NAT gateway<\/span><span style=\"letter-spacing: 0.1px\">, lo que nos da un servicio m\u00e1s \u00edntegro y fiable al tener controladas nuestras IPs de entrada y salida.<\/span><span style=\"letter-spacing: 0.1px\"><\/span><\/p><\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"><p><span style=\"letter-spacing: 0.1px\">Cambiamos&nbsp;<\/span> <span style=\"letter-spacing: 0.1px;font-weight: bolder\">nuestro stack de observabilidad por los servicios de GCP de Monitoring, Logging y Trace<\/span><span style=\"letter-spacing: 0.1px\">.<\/span><span style=\"letter-spacing: 0.1px\"><\/span><\/p><\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f88a67e elementor-widget elementor-widget-spacer\" data-id=\"f88a67e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d97a58c elementor-widget elementor-widget-text-editor\" data-id=\"d97a58c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: var( --e-global-color-text ); font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: var( --e-global-typography-text-font-size ); font-weight: var( --e-global-typography-text-font-weight ); letter-spacing: var( --e-global-typography-text-letter-spacing ); text-align: var(--text-align); word-spacing: var( --e-global-typography-9d5f275-word-spacing ); background-color: var( --e-global-color-5c495ae );\">As\u00ed mismo, gracias a las opciones que brinda GCP, realizamos tambi\u00e9n cambios en nuestros servicios auxiliares:<\/span><\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-635f324 elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"635f324\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.cloudflare.com\/zero-trust\" target=\"_blank\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"><p>Conectamos la VPN de Cloudflare Zero Trust a nuestra nueva red privada.<\/p><\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"><p><span style=\"letter-spacing: 0.1px\">Movimos<\/span> <span style=\"color: var( --e-global-color-text );font-family: var( --e-global-typography-text-font-family ), Sans-serif;letter-spacing: var( --e-global-typography-text-letter-spacing );text-align: var(--text-align);background-color: transparent;font-weight: bolder\">nuestro cluster de MongoDB Atlas a la misma regi\u00f3n<\/span><span style=\"color: var( --e-global-color-text );font-family: var( --e-global-typography-text-font-family ), Sans-serif;font-weight: var( --e-global-typography-text-font-weight );letter-spacing: var( --e-global-typography-text-letter-spacing );text-align: var(--text-align);background-color: transparent\">&nbsp;que GKE, conect\u00e1ndolo por VPC Peering a la red privada.<\/span><span style=\"color: var( --e-global-color-text );font-family: var( --e-global-typography-text-font-family ), Sans-serif;font-size: var( --e-global-typography-text-font-size );font-weight: var( --e-global-typography-text-font-weight );letter-spacing: var( --e-global-typography-text-letter-spacing );background-color: transparent\"><\/span><\/p><\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"><p><span style=\"letter-spacing: 0.1px\">Migramos<\/span> <span style=\"color: var( --e-global-color-text );font-family: var( --e-global-typography-text-font-family ), Sans-serif;letter-spacing: var( --e-global-typography-text-letter-spacing );text-align: var(--text-align);background-color: transparent;font-weight: bolder\">nuestro CI\/CD de CircleCI a GitHub Actions,<\/span><span style=\"color: var( --e-global-color-text );font-family: var( --e-global-typography-text-font-family ), Sans-serif;font-weight: var( --e-global-typography-text-font-weight );letter-spacing: var( --e-global-typography-text-letter-spacing );text-align: var(--text-align);background-color: transparent\">aprovechando que ya ten\u00edamos el c\u00f3digo all\u00ed alojado. Conseguimos flujos m\u00e1s eficientes, seguros e integrados con desarrollo.<\/span><span style=\"color: var( --e-global-color-text );font-family: var( --e-global-typography-text-font-family ), Sans-serif;font-size: var( --e-global-typography-text-font-size );font-weight: var( --e-global-typography-text-font-weight );letter-spacing: var( --e-global-typography-text-letter-spacing );background-color: transparent\"><\/span><\/p><\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"iconlivery icon-liverylayers\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"><span style=\"letter-spacing: 0.1px\">Migramos nuestra<\/span> <span style=\"color: var( --e-global-color-text );font-family: var( --e-global-typography-text-font-family ), Sans-serif;letter-spacing: var( --e-global-typography-text-letter-spacing );text-align: var(--text-align);background-color: transparent;font-weight: bolder\">m\u00e1quina para el servicio de dominios personalizados a Cloudflare Custom Hostnames<\/span><span style=\"color: var( --e-global-color-text );font-family: var( --e-global-typography-text-font-family ), Sans-serif;font-weight: var( --e-global-typography-text-font-weight );letter-spacing: var( --e-global-typography-text-letter-spacing );text-align: var(--text-align);background-color: transparent\">.<\/span><span style=\"letter-spacing: 0.1px\"><\/span><\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7b2f6bd elementor-widget elementor-widget-text-editor\" data-id=\"7b2f6bd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: var( --e-global-color-text ); font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: var( --e-global-typography-text-font-size ); font-weight: var( --e-global-typography-text-font-weight ); letter-spacing: var( --e-global-typography-text-letter-spacing ); text-align: var(--text-align); word-spacing: var( --e-global-typography-9d5f275-word-spacing ); background-color: var( --e-global-color-5c495ae );\">Una vez tuneado y verificado todo el stack, procedimos a levantar el entorno productivo en cuesti\u00f3n de minutos gracias a la receta de Pulumi. Empezamos tambi\u00e9n un <\/span><strong style=\"color: var( --e-global-color-text ); font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: var( --e-global-typography-text-font-size ); letter-spacing: var( --e-global-typography-text-letter-spacing ); text-align: var(--text-align); word-spacing: var( --e-global-typography-9d5f275-word-spacing ); background-color: var( --e-global-color-5c495ae );\"><a href=\"https:\/\/www.mongodb.com\/docs\/atlas\/migration-live-atlas-managed\/\" target=\"_blank\" rel=\"noopener\">proceso de live migration de MongoDB Atlas<\/a><\/strong> <span style=\"color: var( --e-global-color-text ); font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: var( --e-global-typography-text-font-size ); font-weight: var( --e-global-typography-text-font-weight ); letter-spacing: var( --e-global-typography-text-letter-spacing ); text-align: var(--text-align); word-spacing: var( --e-global-typography-9d5f275-word-spacing ); background-color: var( --e-global-color-5c495ae );\">a la nueva regi\u00f3n.<\/span><\/p>\n<p>Una vez listo, paramos los deployments del cluster antiguo, finalizamos el live migration en MongoDB Atlas y cambiamos los DNS en Cloudflare. Todo el tr\u00e1fico ya llegaba al nuevo entorno. <strong>En total conseguimos menos de un minuto de p\u00e9rdida de servicio<\/strong>.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d763405 elementor-widget elementor-widget-heading\" data-id=\"d763405\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u00bfQu\u00e9 beneficios nos trajo esta arquitectura?\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-833f0d1 elementor-widget elementor-widget-text-editor\" data-id=\"833f0d1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Tras toda la migraci\u00f3n hemos conseguido mejorar en todos los aspectos medibles, como tiempos de respuesta, velocidad de transferencia o capacidad de procesamiento.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a1310e1 e-flex e-con-boxed e-con e-parent\" data-id=\"a1310e1\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-97dde53 elementor-view-stacked elementor-position-block-start elementor-widget__width-initial elementor-shape-circle elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"97dde53\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"110\" height=\"110\" viewBox=\"0 0 110 110\" fill=\"none\"><path d=\"M59 109C86.6142 109 109 86.6142 109 59C109 31.3858 86.6142 9 59 9C31.3858 9 9 31.3858 9 59C9 86.6142 31.3858 109 59 109Z\" fill=\"#E7EFFF\"><\/path><path d=\"M109 59C108.991 69.0968 105.931 78.9552 100.221 87.2819C94.51 95.6087 86.4158 102.015 77 105.66C44.57 118.21 9 94.32 9 59C9 45.7392 14.2678 33.0215 23.6447 23.6447C33.0215 14.2678 45.7392 9 59 9C72.2608 9 84.9785 14.2678 94.3553 23.6447C103.732 33.0215 109 45.7392 109 59Z\" fill=\"#E7EFFF\"><\/path><path d=\"M52 88H36C34.4087 88 32.8826 87.3679 31.7574 86.2426C30.6321 85.1174 30 83.5913 30 82V75C30 74.4696 30.2107 73.9609 30.5858 73.5858C30.9609 73.2107 31.4696 73 32 73C32.5304 73 33.0391 73.2107 33.4142 73.5858C33.7893 73.9609 34 74.4696 34 75V82C34 82.5304 34.2107 83.0391 34.5858 83.4142C34.9609 83.7893 35.4696 84 36 84H52C52.5304 84 53.0391 84.2107 53.4142 84.5858C53.7893 84.9609 54 85.4696 54 86C54 86.5304 53.7893 87.0391 53.4142 87.4142C53.0391 87.7893 52.5304 88 52 88Z\" fill=\"#96B1F4\"><\/path><path d=\"M10 7C11.6569 7 13 5.65685 13 4C13 2.34315 11.6569 1 10 1C8.34315 1 7 2.34315 7 4C7 5.65685 8.34315 7 10 7Z\" fill=\"#00C99F\"><\/path><path d=\"M106 17C107.657 17 109 15.6569 109 14C109 12.3431 107.657 11 106 11C104.343 11 103 12.3431 103 14C103 15.6569 104.343 17 106 17Z\" fill=\"#012788\"><\/path><path d=\"M102 101C103.657 101 105 99.6569 105 98C105 96.3431 103.657 95 102 95C100.343 95 99 96.3431 99 98C99 99.6569 100.343 101 102 101Z\" fill=\"#00C99F\"><\/path><path d=\"M4 99C5.65685 99 7 97.6569 7 96C7 94.3431 5.65685 93 4 93C2.34315 93 1 94.3431 1 96C1 97.6569 2.34315 99 4 99Z\" fill=\"#FCD34D\"><\/path><path d=\"M9 15H55C55.5304 15 56.0391 15.2107 56.4142 15.5858C56.7893 15.9609 57 16.4696 57 17V51H7V17C7 16.4696 7.21071 15.9609 7.58579 15.5858C7.96086 15.2107 8.46957 15 9 15Z\" fill=\"#96B1F4\"><\/path><path d=\"M7 51H57V56C57 56.7956 56.6839 57.5587 56.1213 58.1213C55.5587 58.6839 54.7957 59 54 59H10C9.20435 59 8.44129 58.6839 7.87868 58.1213C7.31607 57.5587 7 56.7956 7 56V51Z\" fill=\"#3366E9\"><\/path><path d=\"M54 18H10V48H54V18Z\" fill=\"white\"><\/path><path d=\"M40 65H24L24.88 64.12C25.5523 63.4476 26.0855 62.6494 26.4492 61.7709C26.813 60.8924 27.0001 59.9508 27 59H37C37.0008 60.9201 37.7632 62.7614 39.12 64.12L40 65Z\" fill=\"#0241E3\"><\/path><path d=\"M43 69H21C20.4696 69 19.9609 68.7893 19.5858 68.4142C19.2107 68.0391 19 67.5304 19 67C19 66.4696 19.2107 65.9609 19.5858 65.5858C19.9609 65.2107 20.4696 65 21 65H43C43.5304 65 44.0391 65.2107 44.4142 65.5858C44.7893 65.9609 45 66.4696 45 67C45 67.5304 44.7893 68.0391 44.4142 68.4142C44.0391 68.7893 43.5304 69 43 69Z\" fill=\"#3366E9\"><\/path><path d=\"M108 60V69C107.329 72.3035 106.324 75.5302 105 78.63C98.66 77.39 97.39 91 97.39 91C96.54 92 95.63 93 94.69 94H58V60C58 59.4696 58.2107 58.9609 58.5858 58.5858C58.9609 58.2107 59.4696 58 60 58H106C106.53 58 107.039 58.2107 107.414 58.5858C107.789 58.9609 108 59.4696 108 60Z\" fill=\"#96B1F4\"><\/path><path d=\"M94.69 94C91.6626 97.102 88.2398 99.7918 84.51 102H61C60.2044 102 59.4413 101.684 58.8787 101.121C58.3161 100.559 58 99.7956 58 99V94H94.69Z\" fill=\"#3366E9\"><\/path><path d=\"M105 61V78.6C103.09 83.0867 100.525 87.2654 97.39 91H61V61H105Z\" fill=\"white\"><\/path><path d=\"M84.51 102C82.115 103.431 79.6026 104.655 77 105.66C77.655 104.552 78.0004 103.288 78 102H84.51Z\" fill=\"#0241E3\"><\/path><path d=\"M76 47V56.19C76.0027 61.2151 74.4227 66.1135 71.4843 70.1899C68.5459 74.2664 64.3982 77.3139 59.63 78.9C59.2201 79.0303 58.7799 79.0303 58.37 78.9C53.6018 77.3139 49.4541 74.2664 46.5157 70.1899C43.5773 66.1135 41.9973 61.2151 42 56.19V47C42 46.4696 42.2107 45.9609 42.5858 45.5858C42.9609 45.2107 43.4696 45 44 45C48.685 44.9994 53.215 43.3215 56.77 40.27L57.7 39.48C58.0623 39.1701 58.5233 38.9999 59 38.9999C59.4767 38.9999 59.9377 39.1701 60.3 39.48L61.23 40.27C64.785 43.3215 69.315 44.9994 74 45C74.5304 45 75.0391 45.2107 75.4142 45.5858C75.7893 45.9609 76 46.4696 76 47Z\" fill=\"#00C99F\"><\/path><path d=\"M54.8799 65.62L49.8799 60.62C49.35 60.0513 49.0615 59.2991 49.0752 58.5219C49.0889 57.7447 49.4037 57.0032 49.9534 56.4535C50.503 55.9039 51.2446 55.589 52.0218 55.5753C52.799 55.5616 53.5512 55.8501 54.1199 56.38L56.9999 59.26L63.8799 52.38C64.4486 51.8501 65.2008 51.5616 65.978 51.5753C66.7552 51.589 67.4967 51.9039 68.0464 52.4535C68.596 53.0032 68.9109 53.7447 68.9246 54.5219C68.9383 55.2991 68.6498 56.0513 68.1199 56.62L59.1199 65.62C58.5574 66.1818 57.7949 66.4974 56.9999 66.4974C56.2049 66.4974 55.4424 66.1818 54.8799 65.62Z\" fill=\"white\"><\/path><path d=\"M86 54C85.4696 54 84.9609 53.7893 84.5858 53.4142C84.2107 53.0391 84 52.5304 84 52V36C84 35.4696 83.7893 34.9609 83.4142 34.5858C83.0391 34.2107 82.5304 34 82 34H66C65.4696 34 64.9609 33.7893 64.5858 33.4142C64.2107 33.0391 64 32.5304 64 32C64 31.4696 64.2107 30.9609 64.5858 30.5858C64.9609 30.2107 65.4696 30 66 30H82C83.5913 30 85.1174 30.6321 86.2426 31.7574C87.3679 32.8826 88 34.4087 88 36V52C88 52.5304 87.7893 53.0391 87.4142 53.4142C87.0391 53.7893 86.5304 54 86 54Z\" fill=\"#96B1F4\"><\/path><path d=\"M32 23C30.0222 23 28.0888 23.5865 26.4443 24.6853C24.7998 25.7841 23.5181 27.3459 22.7612 29.1732C22.0043 31.0004 21.8063 33.0111 22.1922 34.9509C22.578 36.8907 23.5304 38.6725 24.9289 40.0711C26.3275 41.4696 28.1093 42.422 30.0491 42.8079C31.9889 43.1937 33.9996 42.9957 35.8268 42.2388C37.6541 41.4819 39.2159 40.2002 40.3147 38.5557C41.4135 36.9112 42 34.9778 42 33C42 30.3478 40.9464 27.8043 39.0711 25.9289C37.1957 24.0536 34.6522 23 32 23ZM39.93 32H37C36.8409 29.6296 36.0159 27.3523 34.62 25.43C36.03 25.9206 37.2745 26.7959 38.2129 27.957C39.1513 29.118 39.7461 30.5185 39.93 32ZM29 34H35C34.7611 36.4634 33.7051 38.7761 32 40.57C30.2949 38.7761 29.2389 36.4634 29 34ZM29 32C29.2389 29.5366 30.2949 27.2239 32 25.43C33.7051 27.2239 34.7611 29.5366 35 32H29ZM29.39 25.43C28.0083 27.3567 27.1974 29.6337 27.05 32H24.05C24.2397 30.5103 24.8449 29.1041 25.7963 27.9423C26.7478 26.7804 28.007 25.9098 29.43 25.43H29.39ZM24.07 34H27.07C27.2291 36.3704 28.0541 38.6477 29.45 40.57C28.027 40.0902 26.7678 39.2196 25.8163 38.0577C24.8649 36.8959 24.2597 35.4897 24.07 34ZM34.57 40.57C35.9838 38.6532 36.8262 36.3754 37 34H40C39.8062 35.4956 39.1936 36.9059 38.2328 38.0684C37.2721 39.2308 36.0023 40.098 34.57 40.57Z\" fill=\"#3366E9\"><\/path><path d=\"M83 66C81.0222 66 79.0888 66.5865 77.4443 67.6853C75.7998 68.7841 74.5181 70.3459 73.7612 72.1732C73.0043 74.0004 72.8063 76.0111 73.1922 77.9509C73.578 79.8907 74.5304 81.6725 75.9289 83.0711C77.3275 84.4696 79.1093 85.422 81.0491 85.8079C82.9889 86.1937 84.9996 85.9957 86.8268 85.2388C88.6541 84.4819 90.2159 83.2002 91.3147 81.5557C92.4135 79.9112 93 77.9778 93 76C93 73.3478 91.9464 70.8043 90.0711 68.9289C88.1957 67.0536 85.6522 66 83 66ZM90.93 75H88C87.8409 72.6296 87.0159 70.3523 85.62 68.43C87.03 68.9206 88.2745 69.7959 89.2129 70.957C90.1513 72.118 90.7461 73.5185 90.93 75ZM80 77H86C85.7611 79.4634 84.7051 81.7761 83 83.57C81.2949 81.7761 80.2389 79.4634 80 77ZM80 75C80.2389 72.5366 81.2949 70.2239 83 68.43C84.7051 70.2239 85.7611 72.5366 86 75H80ZM80.39 68.43C79.0083 70.3567 78.1974 72.6337 78.05 75H75.05C75.2397 73.5103 75.8449 72.1041 76.7963 70.9423C77.7478 69.7804 79.007 68.9098 80.43 68.43H80.39ZM75.07 77H78.07C78.2291 79.3704 79.0541 81.6477 80.45 83.57C79.027 83.0902 77.7678 82.2196 76.8163 81.0577C75.8649 79.8959 75.2597 78.4897 75.07 77ZM85.57 83.57C86.9838 81.6532 87.8262 79.3754 88 77H91C90.8062 78.4956 90.1936 79.9059 89.2328 81.0684C88.2721 82.2308 87.0023 83.098 85.57 83.57Z\" fill=\"#3366E9\"><\/path><\/svg>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tSeguridad\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\t<span style=\"font-size: 18px;white-space: normal\">Mejora de la seguridad de la red y la intercomunicaci\u00f3n de servicios, evitando las comunicaciones externas.<\/span>\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b0d24ab elementor-view-stacked elementor-position-block-start elementor-widget__width-initial elementor-shape-circle elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"b0d24ab\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"110\" height=\"110\" viewBox=\"0 0 110 110\" fill=\"none\"><path d=\"M55 105C82.6142 105 105 82.6142 105 55C105 27.3858 82.6142 5 55 5C27.3858 5 5 27.3858 5 55C5 82.6142 27.3858 105 55 105Z\" fill=\"#E7EFFF\"><\/path><path d=\"M14 7C15.6569 7 17 5.65685 17 4C17 2.34315 15.6569 1 14 1C12.3431 1 11 2.34315 11 4C11 5.65685 12.3431 7 14 7Z\" fill=\"#00C99F\"><\/path><path d=\"M106 12C107.657 12 109 10.6569 109 9C109 7.34315 107.657 6 106 6C104.343 6 103 7.34315 103 9C103 10.6569 104.343 12 106 12Z\" fill=\"#012788\"><\/path><path d=\"M102 109C103.657 109 105 107.657 105 106C105 104.343 103.657 103 102 103C100.343 103 99 104.343 99 106C99 107.657 100.343 109 102 109Z\" fill=\"#00C99F\"><\/path><path d=\"M4 102C5.65685 102 7 100.657 7 99C7 97.3431 5.65685 96 4 96C2.34315 96 1 97.3431 1 99C1 100.657 2.34315 102 4 102Z\" fill=\"#FCD34D\"><\/path><path d=\"M98 25V80.52C96.6412 82.7963 95.1065 84.9629 93.41 87H16.59C14.8935 84.9629 13.3588 82.7963 12 80.52V25C12 23.4087 12.6321 21.8826 13.7574 20.7574C14.8826 19.6321 16.4087 19 18 19H92C93.5913 19 95.1174 19.6321 96.2426 20.7574C97.3679 21.8826 98 23.4087 98 25Z\" fill=\"#96B1F4\"><\/path><path d=\"M92 23H18C16.8954 23 16 23.8954 16 25V81C16 82.1046 16.8954 83 18 83H92C93.1046 83 94 82.1046 94 81V25C94 23.8954 93.1046 23 92 23Z\" fill=\"white\"><\/path><path d=\"M93.4099 87C89.3343 91.8994 84.358 95.9728 78.7498 99H31.2498C25.6417 95.9728 20.6654 91.8994 16.5898 87H93.4099Z\" fill=\"#3366E9\"><\/path><path d=\"M43 87H67V91C67 91.5304 66.7893 92.0391 66.4142 92.4142C66.0391 92.7893 65.5304 93 65 93H45C44.4696 93 43.9609 92.7893 43.5858 92.4142C43.2107 92.0391 43 91.5304 43 91V87Z\" fill=\"#0241E3\"><\/path><path d=\"M16 47H94V81C94 81.5304 93.7893 82.0391 93.4142 82.4142C93.0391 82.7893 92.5304 83 92 83H18C17.4696 83 16.9609 82.7893 16.5858 82.4142C16.2107 82.0391 16 81.5304 16 81V47Z\" fill=\"#3366E9\"><\/path><path d=\"M94 59V55H89V47H85V55H73V47H69V55H57V47H53V55H41V47H37V55H25V47H21V55H16V59H29V67H16V71H21V79H16V81C16 81.5304 16.2107 82.0391 16.5858 82.4142C16.9609 82.7893 17.4696 83 18 83H92C92.5304 83 93.0391 82.7893 93.4142 82.4142C93.7893 82.0391 94 81.5304 94 81V79H89V71H94V67H82V59H94ZM62 59V67H49V59H62ZM53 71V79H41V71H53ZM57 71H69V79H57V71ZM33 59H45V67H33V59ZM25 71H37V79H25V71ZM85 79H73V71H85V79ZM78 67H66V59H78V67Z\" fill=\"#0241E3\"><\/path><path d=\"M72 38C72 42.5087 70.2089 46.8327 67.0208 50.0208C63.8327 53.2089 59.5087 55 55 55C50.4913 55 46.1673 53.2089 42.9792 50.0208C39.7911 46.8327 38 42.5087 38 38C38.1918 35.374 38.9709 32.8246 40.28 30.54C40.4151 30.2661 40.611 30.0268 40.8529 29.8404C41.0948 29.654 41.3762 29.5254 41.6755 29.4646C41.9747 29.4038 42.284 29.4123 42.5794 29.4895C42.8749 29.5667 43.1487 29.7106 43.38 29.91L47 33V29C47.0626 22.9281 49.3751 17.0953 53.49 12.63C53.6774 12.4254 53.9053 12.262 54.1592 12.1502C54.4131 12.0384 54.6876 11.9807 54.965 11.9807C55.2424 11.9807 55.5169 12.0384 55.7708 12.1502C56.0247 12.262 56.2526 12.4254 56.44 12.63C60.61 17.12 72 30.31 72 38Z\" fill=\"#FCD34D\"><\/path><path d=\"M63 47C63 43.84 58.91 38 56.58 35C56.3931 34.7591 56.1535 34.5642 55.8797 34.43C55.6058 34.2959 55.3049 34.2262 55 34.2262C54.6951 34.2262 54.3942 34.2959 54.1203 34.43C53.8465 34.5642 53.6069 34.7591 53.42 35C51.09 38 47 43.84 47 47C47 49.1217 47.8429 51.1566 49.3431 52.6568C50.8434 54.1571 52.8783 55 55 55C57.1217 55 59.1566 54.1571 60.6569 52.6568C62.1571 51.1566 63 49.1217 63 47Z\" fill=\"#012788\"><\/path><\/svg>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tContingencia\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\t<span style=\"white-space: normal\">Mejoras en seguridad y contingencia contra ataques gracias al Firewall de CloudFlare. Alta disponibilidad (HA) multiregional gracias a GKE multi-cluster Ingress.<\/span>\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-560f169 elementor-view-stacked elementor-position-block-start elementor-widget__width-initial elementor-shape-circle elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"560f169\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"110\" height=\"110\" viewBox=\"0 0 110 110\" fill=\"none\"><path d=\"M55 105C82.6142 105 105 82.6142 105 55C105 27.3858 82.6142 5 55 5C27.3858 5 5 27.3858 5 55C5 82.6142 27.3858 105 55 105Z\" fill=\"#E7EFFF\"><\/path><path d=\"M4 17C5.65685 17 7 15.6569 7 14C7 12.3431 5.65685 11 4 11C2.34315 11 1 12.3431 1 14C1 15.6569 2.34315 17 4 17Z\" fill=\"#00C99F\"><\/path><path d=\"M100 7C101.657 7 103 5.65685 103 4C103 2.34315 101.657 1 100 1C98.3431 1 97 2.34315 97 4C97 5.65685 98.3431 7 100 7Z\" fill=\"#012788\"><\/path><path d=\"M106 101C107.657 101 109 99.6569 109 98C109 96.3431 107.657 95 106 95C104.343 95 103 96.3431 103 98C103 99.6569 104.343 101 106 101Z\" fill=\"#00C99F\"><\/path><path d=\"M8 109C9.65685 109 11 107.657 11 106C11 104.343 9.65685 103 8 103C6.34315 103 5 104.343 5 106C5 107.657 6.34315 109 8 109Z\" fill=\"#FCD34D\"><\/path><path d=\"M91 23V89.68C88.8573 91.8923 86.5139 93.9009 84 95.68C75.0975 93.9888 66.0614 93.0985 57 93.02C42.94 93.06 25 95 25 95C22.8625 93.3917 20.8562 91.6161 19 89.69V23C19 19.0218 20.5804 15.2064 23.3934 12.3934C26.2064 9.58035 30.0218 8 34 8H76C79.9782 8 83.7936 9.58035 86.6066 12.3934C89.4197 15.2064 91 19.0218 91 23Z\" fill=\"#3366E9\"><\/path><path d=\"M85 22V95C76.3491 101.5 65.8209 105.015 55 105.015C44.1791 105.015 33.6509 101.5 25 95V22C25 19.8783 25.8429 17.8434 27.3431 16.3431C28.8434 14.8429 30.8783 14 33 14H77C79.1217 14 81.1566 14.8429 82.6569 16.3431C84.1571 17.8434 85 19.8783 85 22Z\" fill=\"white\"><\/path><path d=\"M55 86C68.2548 86 79 75.2548 79 62C79 48.7452 68.2548 38 55 38C41.7452 38 31 48.7452 31 62C31 75.2548 41.7452 86 55 86Z\" fill=\"#3366E9\"><\/path><path d=\"M55 80C64.9411 80 73 71.9411 73 62C73 52.0589 64.9411 44 55 44C45.0589 44 37 52.0589 37 62C37 71.9411 45.0589 80 55 80Z\" fill=\"white\"><\/path><path d=\"M67.7302 74.73L64.8002 71.8C64.4666 71.4634 64.2634 71.0192 64.2267 70.5467C64.1901 70.0742 64.3225 69.604 64.6002 69.22C66.3408 66.9077 67.187 64.0443 66.983 61.1574C66.779 58.2705 65.5386 55.5545 63.4902 53.51L67.7302 49.27C69.4023 50.9415 70.7287 52.9261 71.6337 55.1103C72.5386 57.2946 73.0044 59.6357 73.0044 62C73.0044 64.3643 72.5386 66.7054 71.6337 68.8896C70.7287 71.0739 69.4023 73.0585 67.7302 74.73Z\" fill=\"#FCD34D\"><\/path><path d=\"M45.3998 69.22C45.6775 69.604 45.8099 70.0742 45.7733 70.5467C45.7366 71.0192 45.5334 71.4634 45.1998 71.8L42.2698 74.73C40.5977 73.0585 39.2713 71.0739 38.3663 68.8896C37.4614 66.7054 36.9956 64.3643 36.9956 62C36.9956 59.6357 37.4614 57.2946 38.3663 55.1103C39.2713 52.9261 40.5977 50.9415 42.2698 49.27L46.5098 53.51C44.4614 55.5545 43.2209 58.2705 43.017 61.1574C42.813 64.0443 43.6592 66.9077 45.3998 69.22Z\" fill=\"#00C99F\"><\/path><path d=\"M67.73 49.27L63.49 53.51C62.3752 52.3913 61.0504 51.5036 59.5918 50.898C58.1332 50.2923 56.5694 49.9805 54.99 49.9805C53.4106 49.9805 51.8468 50.2923 50.3882 50.898C48.9296 51.5036 47.6048 52.3913 46.49 53.51L42.25 49.27C43.9219 47.5949 45.9077 46.266 48.0938 45.3593C50.2799 44.4526 52.6233 43.9858 54.99 43.9858C57.3567 43.9858 59.7001 44.4526 61.8862 45.3593C64.0723 46.266 66.0581 47.5949 67.73 49.27Z\" fill=\"#012788\"><\/path><path d=\"M55 66C57.2091 66 59 64.2091 59 62C59 59.7909 57.2091 58 55 58C52.7909 58 51 59.7909 51 62C51 64.2091 52.7909 66 55 66Z\" fill=\"#3366E9\"><\/path><path d=\"M55 64C56.1046 64 57 63.1046 57 62C57 60.8954 56.1046 60 55 60C53.8954 60 53 60.8954 53 62C53 63.1046 53.8954 64 55 64Z\" fill=\"#0241E3\"><\/path><path d=\"M68 62C67.9989 62.2746 67.896 62.539 67.7113 62.7421C67.5266 62.9453 67.2732 63.0728 67 63.1L58 64V60L67 60.9C67.2732 60.9272 67.5266 61.0547 67.7113 61.2579C67.896 61.461 67.9989 61.7254 68 62Z\" fill=\"#3366E9\"><\/path><path d=\"M65.88 23H44.12C43.232 23.0016 42.3688 22.7076 41.6663 22.1644C40.9638 21.6213 40.462 20.8598 40.24 20L38 11H72L69.76 20C69.538 20.8598 69.0362 21.6213 68.3337 22.1644C67.6312 22.7076 66.768 23.0016 65.88 23Z\" fill=\"#3366E9\"><\/path><path d=\"M56 18H46C45.4696 18 44.9609 17.7893 44.5858 17.4142C44.2107 17.0391 44 16.5304 44 16C44 15.4696 44.2107 14.9609 44.5858 14.5858C44.9609 14.2107 45.4696 14 46 14H56C56.5304 14 57.0391 14.2107 57.4142 14.5858C57.7893 14.9609 58 15.4696 58 16C58 16.5304 57.7893 17.0391 57.4142 17.4142C57.0391 17.7893 56.5304 18 56 18Z\" fill=\"#0241E3\"><\/path><path d=\"M64 18C65.1046 18 66 17.1046 66 16C66 14.8954 65.1046 14 64 14C62.8954 14 62 14.8954 62 16C62 17.1046 62.8954 18 64 18Z\" fill=\"#0241E3\"><\/path><\/svg>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tRendimiento\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\t<span style=\"font-size: 18px;white-space: normal\">Mejora de performance y el rendimeinto en el procesamiento de builds de hasta 2x y capacidad de paralelizar el procesamiento.<\/span>\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-19ea715 elementor-view-stacked elementor-position-block-start elementor-widget__width-initial elementor-shape-circle elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"19ea715\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"110\" height=\"110\" viewBox=\"0 0 110 110\" fill=\"none\"><path d=\"M51 101C78.6142 101 101 78.6142 101 51C101 23.3858 78.6142 1 51 1C23.3858 1 1 23.3858 1 51C1 78.6142 23.3858 101 51 101Z\" fill=\"#E7EFFF\"><\/path><path d=\"M84.9999 20C84.9999 91.49 84.9999 87.21 84.9299 87.71C84.7637 88.6317 84.2793 89.4659 83.5611 90.0671C82.8429 90.6683 81.9366 90.9985 80.9999 91H20.9999C15.6621 86.9966 11.1795 81.9653 7.81635 76.2027C4.45316 70.44 2.27738 64.0624 1.41722 57.4458C0.55706 50.8292 1.02991 44.1073 2.80792 37.6763C4.58592 31.2452 7.63311 25.2351 11.7699 20H84.9999Z\" fill=\"#C8D6F9\"><\/path><path d=\"M79 52H41C40.4696 52 39.9609 51.7893 39.5858 51.4142C39.2107 51.0391 39 50.5304 39 50C39 49.4696 39.2107 48.9609 39.5858 48.5858C39.9609 48.2107 40.4696 48 41 48H79C79.5304 48 80.0391 48.2107 80.4142 48.5858C80.7893 48.9609 81 49.4696 81 50C81 50.5304 80.7893 51.0391 80.4142 51.4142C80.0391 51.7893 79.5304 52 79 52Z\" fill=\"white\"><\/path><path d=\"M81 58C81 58.5304 80.7893 59.0391 80.4142 59.4142C80.0391 59.7893 79.5304 60 79 60H1.8C1.57 58.68 1.38 57.35 1.25 56H79C79.5304 56 80.0391 56.2107 80.4142 56.5858C80.7893 56.9609 81 57.4696 81 58Z\" fill=\"white\"><\/path><path d=\"M81 66C81 66.5304 80.7893 67.0391 80.4142 67.4142C80.0391 67.7893 79.5304 68 79 68H3.99999C3.51999 66.69 3.09999 65.36 2.73999 64H79C79.5304 64 80.0391 64.2107 80.4142 64.5858C80.7893 64.9609 81 65.4696 81 66Z\" fill=\"white\"><\/path><path d=\"M81.0001 74C81.0001 74.5304 80.7894 75.0391 80.4143 75.4142C80.0392 75.7893 79.5305 76 79.0001 76H7.70011C6.94011 74.7 6.25011 73.37 5.61011 72H79.0001C79.5305 72 80.0392 72.2107 80.4143 72.5858C80.7894 72.9609 81.0001 73.4696 81.0001 74Z\" fill=\"white\"><\/path><path d=\"M81 82C81 82.5304 80.7893 83.0391 80.4142 83.4142C80.0392 83.7893 79.5304 84 79 84H13.45C12.3211 82.723 11.2596 81.3878 10.27 80H79C79.5304 80 80.0392 80.2107 80.4142 80.5858C80.7893 80.9609 81 81.4696 81 82Z\" fill=\"white\"><\/path><path d=\"M85 14V20H11.78C14.8077 16.1649 18.3826 12.7956 22.39 10H81C82.0609 10 83.0783 10.4214 83.8285 11.1716C84.5786 11.9217 85 12.9391 85 14Z\" fill=\"#0241E3\"><\/path><path d=\"M43 20H11.78C14.8077 16.1649 18.3826 12.7956 22.39 10H37C37.8617 9.9981 38.7009 10.2745 39.3928 10.788C40.0847 11.3015 40.5923 12.0247 40.84 12.85L43 20Z\" fill=\"#3366E9\"><\/path><path d=\"M36 17C37.1046 17 38 16.1046 38 15C38 13.8954 37.1046 13 36 13C34.8954 13 34 13.8954 34 15C34 16.1046 34.8954 17 36 17Z\" fill=\"white\"><\/path><path d=\"M80 17C81.1046 17 82 16.1046 82 15C82 13.8954 81.1046 13 80 13C78.8954 13 78 13.8954 78 15C78 16.1046 78.8954 17 80 17Z\" fill=\"white\"><\/path><path d=\"M73 17C74.1046 17 75 16.1046 75 15C75 13.8954 74.1046 13 73 13C71.8954 13 71 13.8954 71 15C71 16.1046 71.8954 17 73 17Z\" fill=\"white\"><\/path><path d=\"M66 17C67.1046 17 68 16.1046 68 15C68 13.8954 67.1046 13 66 13C64.8954 13 64 13.8954 64 15C64 16.1046 64.8954 17 66 17Z\" fill=\"white\"><\/path><path d=\"M4 17C5.65685 17 7 15.6569 7 14C7 12.3431 5.65685 11 4 11C2.34315 11 1 12.3431 1 14C1 15.6569 2.34315 17 4 17Z\" fill=\"#00C99F\"><\/path><path d=\"M99 7C100.657 7 102 5.65685 102 4C102 2.34315 100.657 1 99 1C97.3431 1 96 2.34315 96 4C96 5.65685 97.3431 7 99 7Z\" fill=\"#012788\"><\/path><path d=\"M106 94C107.657 94 109 92.6569 109 91C109 89.3431 107.657 88 106 88C104.343 88 103 89.3431 103 91C103 92.6569 104.343 94 106 94Z\" fill=\"#00C99F\"><\/path><path d=\"M15 109C16.6569 109 18 107.657 18 106C18 104.343 16.6569 103 15 103C13.3431 103 12 104.343 12 106C12 107.657 13.3431 109 15 109Z\" fill=\"#FCD34D\"><\/path><path d=\"M92 47H68C63.5817 47 60 50.5817 60 55V101C60 105.418 63.5817 109 68 109H92C96.4183 109 100 105.418 100 101V55C100 50.5817 96.4183 47 92 47Z\" fill=\"#3366E9\"><\/path><path d=\"M92 51H68C65.7909 51 64 52.7909 64 55V101C64 103.209 65.7909 105 68 105H92C94.2091 105 96 103.209 96 101V55C96 52.7909 94.2091 51 92 51Z\" fill=\"white\"><\/path><path d=\"M89 50L88.32 53.39C88.2286 53.8504 87.9781 54.264 87.6125 54.5583C87.2468 54.8526 86.7893 55.009 86.32 55H73.64C73.1707 55.009 72.7132 54.8526 72.3475 54.5583C71.9819 54.264 71.7314 53.8504 71.64 53.39L71 50H89Z\" fill=\"#3366E9\"><\/path><path d=\"M35.0001 26V50C35.0001 50.5304 34.7894 51.0391 34.4143 51.4142C34.0392 51.7893 33.5305 52 33.0001 52H1.00006C1.00006 51.67 1.00006 51.34 1.00006 51C0.984785 41.4237 3.7387 32.0471 8.93006 24H33.0001C33.5305 24 34.0392 24.2107 34.4143 24.5858C34.7894 24.9609 35.0001 25.4696 35.0001 26Z\" fill=\"#3366E9\"><\/path><path d=\"M79 28H41C40.4696 28 39.9609 27.7893 39.5858 27.4142C39.2107 27.0391 39 26.5304 39 26C39 25.4696 39.2107 24.9609 39.5858 24.5858C39.9609 24.2107 40.4696 24 41 24H79C79.5304 24 80.0391 24.2107 80.4142 24.5858C80.7893 24.9609 81 25.4696 81 26C81 26.5304 80.7893 27.0391 80.4142 27.4142C80.0391 27.7893 79.5304 28 79 28Z\" fill=\"white\"><\/path><path d=\"M79 36H41C40.4696 36 39.9609 35.7893 39.5858 35.4142C39.2107 35.0391 39 34.5304 39 34C39 33.4696 39.2107 32.9609 39.5858 32.5858C39.9609 32.2107 40.4696 32 41 32H79C79.5304 32 80.0391 32.2107 80.4142 32.5858C80.7893 32.9609 81 33.4696 81 34C81 34.5304 80.7893 35.0391 80.4142 35.4142C80.0391 35.7893 79.5304 36 79 36Z\" fill=\"white\"><\/path><path d=\"M79 44H41C40.4696 44 39.9609 43.7893 39.5858 43.4142C39.2107 43.0391 39 42.5304 39 42C39 41.4696 39.2107 40.9609 39.5858 40.5858C39.9609 40.2107 40.4696 40 41 40H79C79.5304 40 80.0391 40.2107 80.4142 40.5858C80.7893 40.9609 81 41.4696 81 42C81 42.5304 80.7893 43.0391 80.4142 43.4142C80.0391 43.7893 79.5304 44 79 44Z\" fill=\"white\"><\/path><path d=\"M79 60H69C68.4477 60 68 60.4477 68 61V76C68 76.5523 68.4477 77 69 77H79C79.5523 77 80 76.5523 80 76V61C80 60.4477 79.5523 60 79 60Z\" fill=\"#3366E9\"><\/path><path d=\"M91 62H85C84.7348 62 84.4804 61.8946 84.2929 61.7071C84.1054 61.5196 84 61.2652 84 61C84 60.7348 84.1054 60.4804 84.2929 60.2929C84.4804 60.1054 84.7348 60 85 60H91C91.2652 60 91.5196 60.1054 91.7071 60.2929C91.8946 60.4804 92 60.7348 92 61C92 61.2652 91.8946 61.5196 91.7071 61.7071C91.5196 61.8946 91.2652 62 91 62Z\" fill=\"#96B1F4\"><\/path><path d=\"M91 67H85C84.7348 67 84.4804 66.8946 84.2929 66.7071C84.1054 66.5196 84 66.2652 84 66C84 65.7348 84.1054 65.4804 84.2929 65.2929C84.4804 65.1054 84.7348 65 85 65H91C91.2652 65 91.5196 65.1054 91.7071 65.2929C91.8946 65.4804 92 65.7348 92 66C92 66.2652 91.8946 66.5196 91.7071 66.7071C91.5196 66.8946 91.2652 67 91 67Z\" fill=\"#96B1F4\"><\/path><path d=\"M91 72H85C84.7348 72 84.4804 71.8946 84.2929 71.7071C84.1054 71.5196 84 71.2652 84 71C84 70.7348 84.1054 70.4804 84.2929 70.2929C84.4804 70.1054 84.7348 70 85 70H91C91.2652 70 91.5196 70.1054 91.7071 70.2929C91.8946 70.4804 92 70.7348 92 71C92 71.2652 91.8946 71.5196 91.7071 71.7071C91.5196 71.8946 91.2652 72 91 72Z\" fill=\"#96B1F4\"><\/path><path d=\"M91 77H85C84.7348 77 84.4804 76.8946 84.2929 76.7071C84.1054 76.5196 84 76.2652 84 76C84 75.7348 84.1054 75.4804 84.2929 75.2929C84.4804 75.1054 84.7348 75 85 75H91C91.2652 75 91.5196 75.1054 91.7071 75.2929C91.8946 75.4804 92 75.7348 92 76C92 76.2652 91.8946 76.5196 91.7071 76.7071C91.5196 76.8946 91.2652 77 91 77Z\" fill=\"#96B1F4\"><\/path><path d=\"M91 82H69C68.7348 82 68.4804 81.8946 68.2929 81.7071C68.1054 81.5196 68 81.2652 68 81C68 80.7348 68.1054 80.4804 68.2929 80.2929C68.4804 80.1054 68.7348 80 69 80H91C91.2652 80 91.5196 80.1054 91.7071 80.2929C91.8946 80.4804 92 80.7348 92 81C92 81.2652 91.8946 81.5196 91.7071 81.7071C91.5196 81.8946 91.2652 82 91 82Z\" fill=\"#96B1F4\"><\/path><path d=\"M91 87H69C68.7348 87 68.4804 86.8946 68.2929 86.7071C68.1054 86.5196 68 86.2652 68 86C68 85.7348 68.1054 85.4804 68.2929 85.2929C68.4804 85.1054 68.7348 85 69 85H91C91.2652 85 91.5196 85.1054 91.7071 85.2929C91.8946 85.4804 92 85.7348 92 86C92 86.2652 91.8946 86.5196 91.7071 86.7071C91.5196 86.8946 91.2652 87 91 87Z\" fill=\"#96B1F4\"><\/path><path d=\"M91 92H69C68.7348 92 68.4804 91.8946 68.2929 91.7071C68.1054 91.5196 68 91.2652 68 91C68 90.7348 68.1054 90.4804 68.2929 90.2929C68.4804 90.1054 68.7348 90 69 90H91C91.2652 90 91.5196 90.1054 91.7071 90.2929C91.8946 90.4804 92 90.7348 92 91C92 91.2652 91.8946 91.5196 91.7071 91.7071C91.5196 91.8946 91.2652 92 91 92Z\" fill=\"#96B1F4\"><\/path><path d=\"M91 97H69C68.7348 97 68.4804 96.8946 68.2929 96.7071C68.1054 96.5196 68 96.2652 68 96C68 95.7348 68.1054 95.4804 68.2929 95.2929C68.4804 95.1054 68.7348 95 69 95H91C91.2652 95 91.5196 95.1054 91.7071 95.2929C91.8946 95.4804 92 95.7348 92 96C92 96.2652 91.8946 96.5196 91.7071 96.7071C91.5196 96.8946 91.2652 97 91 97Z\" fill=\"#96B1F4\"><\/path><path d=\"M80 52H76C75.7348 52 75.4804 51.8946 75.2929 51.7071C75.1054 51.5196 75 51.2652 75 51C75 50.7348 75.1054 50.4804 75.2929 50.2929C75.4804 50.1054 75.7348 50 76 50H80C80.2652 50 80.5196 50.1054 80.7071 50.2929C80.8946 50.4804 81 50.7348 81 51C81 51.2652 80.8946 51.5196 80.7071 51.7071C80.5196 51.8946 80.2652 52 80 52Z\" fill=\"#0241E3\"><\/path><path d=\"M84 52C84.5523 52 85 51.5523 85 51C85 50.4477 84.5523 50 84 50C83.4477 50 83 50.4477 83 51C83 51.5523 83.4477 52 84 52Z\" fill=\"#0241E3\"><\/path><\/svg>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tExperiencia del usuario\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\t<span style=\"font-size: 18px;white-space: normal\">Mejora de la experiencia del usuario reduciendo significativamente los tiempos de respuesta de nuestros servicios. La media ha pasado de 120ms a 30ms, llegando incluso a alcanzar tiempos inferiores a 5ms en Madrid.\n\n\n\n<\/span>\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c0453d6 elementor-view-stacked elementor-position-block-start elementor-widget__width-initial elementor-shape-circle elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"c0453d6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"110\" height=\"110\" viewBox=\"0 0 110 110\" fill=\"none\"><path d=\"M55 105C82.6142 105 105 82.6142 105 55C105 27.3858 82.6142 5 55 5C27.3858 5 5 27.3858 5 55C5 82.6142 27.3858 105 55 105Z\" fill=\"#E7EFFF\"><\/path><path d=\"M32 7C33.6569 7 35 5.65685 35 4C35 2.34315 33.6569 1 32 1C30.3431 1 29 2.34315 29 4C29 5.65685 30.3431 7 32 7Z\" fill=\"#00C99F\"><\/path><path d=\"M106 56C107.657 56 109 54.6569 109 53C109 51.3431 107.657 50 106 50C104.343 50 103 51.3431 103 53C103 54.6569 104.343 56 106 56Z\" fill=\"#012788\"><\/path><path d=\"M82 110C83.6569 110 85 108.657 85 107C85 105.343 83.6569 104 82 104C80.3431 104 79 105.343 79 107C79 108.657 80.3431 110 82 110Z\" fill=\"#00C99F\"><\/path><path d=\"M4 85C5.65685 85 7 83.6569 7 82C7 80.3431 5.65685 79 4 79C2.34315 79 1 80.3431 1 82C1 83.6569 2.34315 85 4 85Z\" fill=\"#FCD34D\"><\/path><path d=\"M89 42C98.9411 42 107 33.9411 107 24C107 14.0589 98.9411 6 89 6C79.0589 6 71 14.0589 71 24C71 33.9411 79.0589 42 89 42Z\" fill=\"#00C99F\"><\/path><path d=\"M94 31C93.4704 30.9978 92.9633 30.7856 92.59 30.41L87.59 25.41C87.2144 25.0366 87.0022 24.5296 87 24V14C87 13.4696 87.2107 12.9609 87.5858 12.5858C87.9609 12.2107 88.4696 12 89 12C89.5304 12 90.0391 12.2107 90.4142 12.5858C90.7893 12.9609 91 13.4696 91 14V23.17L95.41 27.59C95.688 27.8697 95.8771 28.2253 95.9536 28.6121C96.0301 28.999 95.9905 29.3998 95.8398 29.7642C95.6892 30.1287 95.4341 30.4404 95.1067 30.6603C94.7794 30.8801 94.3943 30.9983 94 31Z\" fill=\"white\"><\/path><path d=\"M98.9999 83V89C98.9999 89.2652 98.8946 89.5196 98.707 89.7071C98.5195 89.8946 98.2651 90 97.9999 90H19.3099C16.9097 87.5609 14.7682 84.88 12.9199 82H97.9999C98.2651 82 98.5195 82.1054 98.707 82.2929C98.8946 82.4804 98.9999 82.7348 98.9999 83Z\" fill=\"#C8D6F9\"><\/path><path d=\"M90.6901 90C86.0354 94.744 80.4818 98.5124 74.3537 101.085C68.2256 103.658 61.6462 104.983 55.0001 104.983C48.3539 104.983 41.7745 103.658 35.6464 101.085C29.5184 98.5124 23.9647 94.744 19.3101 90H90.6901Z\" fill=\"#96B1F4\"><\/path><path d=\"M7 23H59C60.0609 23 61.0783 23.4214 61.8284 24.1716C62.5786 24.9217 63 25.9391 63 27V65H3V27C3 25.9391 3.42143 24.9217 4.17157 24.1716C4.92172 23.4214 5.93913 23 7 23Z\" fill=\"#96B1F4\"><\/path><path d=\"M3 65H63V69C63 70.0609 62.5786 71.0783 61.8284 71.8284C61.0783 72.5786 60.0609 73 59 73H7C5.93913 73 4.92172 72.5786 4.17157 71.8284C3.42143 71.0783 3 70.0609 3 69V65Z\" fill=\"#3366E9\"><\/path><path d=\"M41.0001 79C23.5001 79 25.1001 78.93 25.0001 79C25.9227 78.3835 26.6792 77.5491 27.2025 76.5706C27.7257 75.5921 27.9997 74.4996 28.0001 73.39V73H38.0001V73.39C37.9987 74.5 38.2719 75.593 38.7954 76.5719C39.3188 77.5507 40.0762 78.3848 41.0001 79Z\" fill=\"#0241E3\"><\/path><path d=\"M59 26H7C6.44772 26 6 26.4477 6 27V61C6 61.5523 6.44772 62 7 62H59C59.5523 62 60 61.5523 60 61V27C60 26.4477 59.5523 26 59 26Z\" fill=\"white\"><\/path><path d=\"M45.5 79H20.5C19.6716 79 19 79.6716 19 80.5C19 81.3284 19.6716 82 20.5 82H45.5C46.3284 82 47 81.3284 47 80.5C47 79.6716 46.3284 79 45.5 79Z\" fill=\"#3366E9\"><\/path><path d=\"M33 71C34.1046 71 35 70.1046 35 69C35 67.8954 34.1046 67 33 67C31.8954 67 31 67.8954 31 69C31 70.1046 31.8954 71 33 71Z\" fill=\"white\"><\/path><path d=\"M98 73H72V79H98V73Z\" fill=\"#96B1F4\"><\/path><path d=\"M72 76C72 76.7956 72.3161 77.5587 72.8787 78.1213C73.4413 78.6839 74.2044 79 75 79H98.5C98.8978 79 99.2794 79.158 99.5607 79.4393C99.842 79.7206 100 80.1022 100 80.5C100 80.8978 99.842 81.2794 99.5607 81.5607C99.2794 81.842 98.8978 82 98.5 82H75C73.4087 82 71.8826 81.3679 70.7574 80.2426C69.6321 79.1174 69 77.5913 69 76C69 74.4087 69.6321 72.8826 70.7574 71.7574C71.8826 70.6321 73.4087 70 75 70H98.5C98.8978 70 99.2794 70.158 99.5607 70.4393C99.842 70.7206 100 71.1022 100 71.5C100 71.8978 99.842 72.2794 99.5607 72.5607C99.2794 72.842 98.8978 73 98.5 73H75C74.2044 73 73.4413 73.3161 72.8787 73.8787C72.3161 74.4413 72 75.2044 72 76Z\" fill=\"#3366E9\"><\/path><path d=\"M71 67H97V61H71V67Z\" fill=\"#96B1F4\"><\/path><path d=\"M97 64C97 64.7956 96.6839 65.5587 96.1213 66.1213C95.5587 66.6839 94.7956 67 94 67H70.5C70.1022 67 69.7206 67.158 69.4393 67.4393C69.158 67.7206 69 68.1022 69 68.5C69 68.8978 69.158 69.2794 69.4393 69.5607C69.7206 69.842 70.1022 70 70.5 70H94C95.5913 70 97.1174 69.3679 98.2426 68.2426C99.3679 67.1174 100 65.5913 100 64C100 62.4087 99.3679 60.8826 98.2426 59.7574C97.1174 58.6321 95.5913 58 94 58H70.5C70.1022 58 69.7206 58.158 69.4393 58.4393C69.158 58.7206 69 59.1022 69 59.5C69 59.8978 69.158 60.2794 69.4393 60.5607C69.7206 60.842 70.1022 61 70.5 61H94C94.7956 61 95.5587 61.3161 96.1213 61.8787C96.6839 62.4413 97 63.2044 97 64Z\" fill=\"#0241E3\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M33.0809 42.8794L35.0525 46.7654L33.0748 46.291L31.0972 46.7654L33.0803 42.8794L33.0806 42.8892L33.0809 42.8794Z\" fill=\"#0241E3\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M33.0781 35L34.3449 37.5057L34.3437 37.508L40.1538 49L37.2615 48.2905L33.0769 40.0137L28.8924 48.2905L26 49L31.8101 37.508L31.8089 37.5057L33.0757 35L33.0769 35.0023L33.0781 35Z\" fill=\"#0241E3\"><\/path><path d=\"M54 57H12C11.7348 57 11.4804 56.8946 11.2929 56.7071C11.1054 56.5196 11 56.2652 11 56C11 55.7348 11.1054 55.4804 11.2929 55.2929C11.4804 55.1054 11.7348 55 12 55H54C54.2652 55 54.5196 55.1054 54.7071 55.2929C54.8946 55.4804 55 55.7348 55 56C55 56.2652 54.8946 56.5196 54.7071 56.7071C54.5196 56.8946 54.2652 57 54 57Z\" fill=\"#C8D6F9\"><\/path><path d=\"M17 58C18.1046 58 19 57.1046 19 56C19 54.8954 18.1046 54 17 54C15.8954 54 15 54.8954 15 56C15 57.1046 15.8954 58 17 58Z\" fill=\"#3366E9\"><\/path><\/svg>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tTiempos de respuesta\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\t<span style=\"font-size: 18px;white-space: normal\">Reducci\u00f3n de los tiempos de consulta y respuesta de base de datos, al encontrarse en la misma regi\u00f3n y comunicarse a trav\u00e9s de red privada en 2x.<\/span>\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c71b7ba elementor-view-stacked elementor-position-block-start elementor-widget__width-initial elementor-shape-circle elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"c71b7ba\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"110\" height=\"110\" viewBox=\"0 0 110 110\" fill=\"none\"><path d=\"M55 109C82.6142 109 105 86.6142 105 59C105 31.3858 82.6142 9 55 9C27.3858 9 5 31.3858 5 59C5 86.6142 27.3858 109 55 109Z\" fill=\"#E7EFFF\"><\/path><path d=\"M6 7C7.65685 7 9 5.65685 9 4C9 2.34315 7.65685 1 6 1C4.34315 1 3 2.34315 3 4C3 5.65685 4.34315 7 6 7Z\" fill=\"#00C99F\"><\/path><path d=\"M106 14C107.657 14 109 12.6569 109 11C109 9.34315 107.657 8 106 8C104.343 8 103 9.34315 103 11C103 12.6569 104.343 14 106 14Z\" fill=\"#012788\"><\/path><path d=\"M101 109C102.657 109 104 107.657 104 106C104 104.343 102.657 103 101 103C99.3431 103 98 104.343 98 106C98 107.657 99.3431 109 101 109Z\" fill=\"#00C99F\"><\/path><path d=\"M4 100C5.65685 100 7 98.6569 7 97C7 95.3431 5.65685 94 4 94C2.34315 94 1 95.3431 1 97C1 98.6569 2.34315 100 4 100Z\" fill=\"#FCD34D\"><\/path><path d=\"M81 4H29C26.7909 4 25 5.79086 25 8V30C25 32.2091 26.7909 34 29 34H81C83.2091 34 85 32.2091 85 30V8C85 5.79086 83.2091 4 81 4Z\" fill=\"#96B1F4\"><\/path><path d=\"M48 13H32C31.4696 13 30.9609 12.7893 30.5858 12.4142C30.2107 12.0391 30 11.5304 30 11C30 10.4696 30.2107 9.96086 30.5858 9.58579C30.9609 9.21071 31.4696 9 32 9H48C48.5304 9 49.0391 9.21071 49.4142 9.58579C49.7893 9.96086 50 10.4696 50 11C50 11.5304 49.7893 12.0391 49.4142 12.4142C49.0391 12.7893 48.5304 13 48 13Z\" fill=\"white\"><\/path><path d=\"M78 21H32C31.4696 21 30.9609 20.7893 30.5858 20.4142C30.2107 20.0391 30 19.5304 30 19C30 18.4696 30.2107 17.9609 30.5858 17.5858C30.9609 17.2107 31.4696 17 32 17H78C78.5304 17 79.0391 17.2107 79.4142 17.5858C79.7893 17.9609 80 18.4696 80 19C80 19.5304 79.7893 20.0391 79.4142 20.4142C79.0391 20.7893 78.5304 21 78 21Z\" fill=\"white\"><\/path><path d=\"M78 29H32C31.4696 29 30.9609 28.7893 30.5858 28.4142C30.2107 28.0391 30 27.5304 30 27C30 26.4696 30.2107 25.9609 30.5858 25.5858C30.9609 25.2107 31.4696 25 32 25H78C78.5304 25 79.0391 25.2107 79.4142 25.5858C79.7893 25.9609 80 26.4696 80 27C80 27.5304 79.7893 28.0391 79.4142 28.4142C79.0391 28.7893 78.5304 29 78 29Z\" fill=\"white\"><\/path><path d=\"M81 40H29C26.7909 40 25 41.7909 25 44V66C25 68.2091 26.7909 70 29 70H81C83.2091 70 85 68.2091 85 66V44C85 41.7909 83.2091 40 81 40Z\" fill=\"#3366E9\"><\/path><path d=\"M62 49H78C78.5304 49 79.0391 48.7893 79.4142 48.4142C79.7893 48.0391 80 47.5304 80 47C80 46.4696 79.7893 45.9609 79.4142 45.5858C79.0391 45.2107 78.5304 45 78 45H62C61.4696 45 60.9609 45.2107 60.5858 45.5858C60.2107 45.9609 60 46.4696 60 47C60 47.5304 60.2107 48.0391 60.5858 48.4142C60.9609 48.7893 61.4696 49 62 49Z\" fill=\"white\"><\/path><path d=\"M32 57H78C78.5304 57 79.0391 56.7893 79.4142 56.4142C79.7893 56.0391 80 55.5304 80 55C80 54.4696 79.7893 53.9609 79.4142 53.5858C79.0391 53.2107 78.5304 53 78 53H32C31.4696 53 30.9609 53.2107 30.5858 53.5858C30.2107 53.9609 30 54.4696 30 55C30 55.5304 30.2107 56.0391 30.5858 56.4142C30.9609 56.7893 31.4696 57 32 57Z\" fill=\"white\"><\/path><path d=\"M32 65H78C78.5304 65 79.0391 64.7893 79.4142 64.4142C79.7893 64.0391 80 63.5304 80 63C80 62.4696 79.7893 61.9609 79.4142 61.5858C79.0391 61.2107 78.5304 61 78 61H32C31.4696 61 30.9609 61.2107 30.5858 61.5858C30.2107 61.9609 30 62.4696 30 63C30 63.5304 30.2107 64.0391 30.5858 64.4142C30.9609 64.7893 31.4696 65 32 65Z\" fill=\"white\"><\/path><path d=\"M85 80V99C81.064 101.961 76.7097 104.32 72.08 106H37.92C33.2903 104.32 28.936 101.961 25 99V80C25 78.9391 25.4214 77.9217 26.1716 77.1716C26.9217 76.4214 27.9391 76 29 76H81C82.0609 76 83.0783 76.4214 83.8284 77.1716C84.5786 77.9217 85 78.9391 85 80Z\" fill=\"#0241E3\"><\/path><path d=\"M48 85H32C31.4696 85 30.9609 84.7893 30.5858 84.4142C30.2107 84.0391 30 83.5304 30 83C30 82.4696 30.2107 81.9609 30.5858 81.5858C30.9609 81.2107 31.4696 81 32 81H48C48.5304 81 49.0391 81.2107 49.4142 81.5858C49.7893 81.9609 50 82.4696 50 83C50 83.5304 49.7893 84.0391 49.4142 84.4142C49.0391 84.7893 48.5304 85 48 85Z\" fill=\"white\"><\/path><path d=\"M78 93H32C31.4696 93 30.9609 92.7893 30.5858 92.4142C30.2107 92.0391 30 91.5304 30 91C30 90.4696 30.2107 89.9609 30.5858 89.5858C30.9609 89.2107 31.4696 89 32 89H78C78.5304 89 79.0391 89.2107 79.4142 89.5858C79.7893 89.9609 80 90.4696 80 91C80 91.5304 79.7893 92.0391 79.4142 92.4142C79.0391 92.7893 78.5304 93 78 93Z\" fill=\"white\"><\/path><path d=\"M78 101H32C31.4696 101 30.9609 100.789 30.5858 100.414C30.2107 100.039 30 99.5304 30 99C30 98.4696 30.2107 97.9609 30.5858 97.5858C30.9609 97.2107 31.4696 97 32 97H78C78.5304 97 79.0391 97.2107 79.4142 97.5858C79.7893 97.9609 80 98.4696 80 99C80 99.5304 79.7893 100.039 79.4142 100.414C79.0391 100.789 78.5304 101 78 101Z\" fill=\"white\"><\/path><path d=\"M19 53H11C9.4087 53 7.88258 52.3678 6.75736 51.2426C5.63214 50.1174 5 48.5913 5 47V27C5 25.4087 5.63214 23.8825 6.75736 22.7573C7.88258 21.6321 9.4087 21 11 21H12V23C12.0002 23.3767 12.1068 23.7456 12.3076 24.0644C12.5083 24.3832 12.7949 24.6388 13.1345 24.8018C13.4741 24.9648 13.8529 25.0286 14.2271 24.9858C14.6014 24.943 14.9559 24.7954 15.25 24.56L20.25 20.56C20.4836 20.3726 20.6721 20.1351 20.8016 19.8651C20.9312 19.5951 20.9984 19.2994 20.9984 19C20.9984 18.7005 20.9312 18.4049 20.8016 18.1348C20.6721 17.8648 20.4836 17.6274 20.25 17.44L15.25 13.44C14.9559 13.2045 14.6014 13.0569 14.2271 13.0142C13.8529 12.9714 13.4741 13.0352 13.1345 13.1982C12.7949 13.3612 12.5083 13.6168 12.3076 13.9355C12.1068 14.2543 12.0002 14.6233 12 15V17H11C8.34784 17 5.8043 18.0535 3.92893 19.9289C2.05357 21.8043 1 24.3478 1 27V47C1 49.6521 2.05357 52.1957 3.92893 54.071C5.8043 55.9464 8.34784 57 11 57H19C19.5304 57 20.0391 56.7893 20.4142 56.4142C20.7893 56.0391 21 55.5304 21 55C21 54.4695 20.7893 53.9608 20.4142 53.5858C20.0391 53.2107 19.5304 53 19 53Z\" fill=\"#C8D6F9\"><\/path><path d=\"M99 53H91C90.4696 53 89.9609 53.2107 89.5858 53.5858C89.2107 53.9609 89 54.4696 89 55C89 55.5304 89.2107 56.0391 89.5858 56.4142C89.9609 56.7893 90.4696 57 91 57H99C100.591 57 102.117 57.6321 103.243 58.7574C104.368 59.8826 105 61.4087 105 63V83C105 84.5913 104.368 86.1174 103.243 87.2426C102.117 88.3679 100.591 89 99 89H98V87C97.9998 86.6233 97.8932 86.2543 97.6924 85.9356C97.4917 85.6168 97.2051 85.3612 96.8655 85.1982C96.5259 85.0352 96.1471 84.9714 95.7729 85.0142C95.3986 85.057 95.0441 85.2046 94.75 85.44L89.75 89.44C89.5164 89.6274 89.3279 89.8649 89.1983 90.1349C89.0688 90.4049 89.0016 90.7005 89.0016 91C89.0016 91.2995 89.0688 91.5951 89.1983 91.8651C89.3279 92.1351 89.5164 92.3726 89.75 92.56L94.75 96.56C95.0441 96.7954 95.3986 96.943 95.7729 96.9858C96.1471 97.0286 96.5259 96.9648 96.8655 96.8018C97.2051 96.6388 97.4917 96.3832 97.6924 96.0644C97.8932 95.7457 97.9998 95.3767 98 95V93H99C101.652 93 104.196 91.9464 106.071 90.0711C107.946 88.1957 109 85.6522 109 83V63C109 60.3478 107.946 57.8043 106.071 55.9289C104.196 54.0536 101.652 53 99 53Z\" fill=\"#C8D6F9\"><\/path><\/svg>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tProcesos CI\/CD\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\t<span style=\"font-size: 18px;white-space: normal\">Aceleraci\u00f3n de los procesos de CI\/CD y, en consecuencia, de nuestras capacidades de entrega continua a trav\u00e9s de una experiencia de desarrollo m\u00e1s centralizada a trav\u00e9s de GitHub.<\/span>\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3db3bba elementor-widget elementor-widget-spacer\" data-id=\"3db3bba\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d1e7d67 elementor-widget elementor-widget-heading\" data-id=\"d1e7d67\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Conclusiones<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b28aa3b elementor-widget elementor-widget-text-editor\" data-id=\"b28aa3b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Applivery ha experimentado una e<strong>voluci\u00f3n constante desde su nacimiento<\/strong>, nuevas necesidades y funcionalidades siguen desarroll\u00e1ndose continuamente. Siempre hemos mantenido <strong>un compromiso con la innovaci\u00f3n, adapt\u00e1ndonos a los requisitos de negocio para seguir manteni\u00e9ndonos a la vanguardia de la tecnolog\u00eda y ofrecer un servicio confiable y escalable a todos nuestros clientes<\/strong>.<\/p>\n<p>Esta reciente iteraci\u00f3n con GCP es la \u00faltima muestra de ello, haciendo un gran esfuerzo a todos los niveles para <strong>consolidar las bases de nuestra plataforma, asegurando su solidez a largo plazo y permiti\u00e9ndonos continuar innovando de forma \u00e1gil y sostenible en el tiempo<\/strong>.<\/p>\n<p>\u00bfY ahora qu\u00e9? \u00a1Chupito para el que diga IA generativa! \ud83d\ude00<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>C\u00f3mo Applivery ha mejorado la escalabilidad y seguridad de su servicio MDM migrando a una plataforma orientada a microservicios basada en Kubernetes en GCP Comunidad de Madrid<\/p>\n","protected":false},"author":6,"featured_media":29298,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"content-type":"","inline_featured_image":false,"footnotes":""},"categories":[222],"tags":[],"product":[],"class_list":["post-29177","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tech"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/posts\/29177","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/comments?post=29177"}],"version-history":[{"count":5,"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/posts\/29177\/revisions"}],"predecessor-version":[{"id":30008,"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/posts\/29177\/revisions\/30008"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/media\/29298"}],"wp:attachment":[{"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/media?parent=29177"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/categories?post=29177"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/tags?post=29177"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.applivery.com\/es\/wp-json\/wp\/v2\/product?post=29177"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}