[{"data":1,"prerenderedAt":232},["ShallowReactive",2],{"seo-verification":3,"blog-black-friday-2026-tienda-online-aguantar-la-carga-es":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-black-friday-2026-tienda-online-aguantar-la-carga-es",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":27,"featuredImage":29,"bgImage":30,"posterImage":31,"relatedSolution":29,"intro":32,"sections":33,"ctaTitle":173,"ctaBody":174,"ctaButton":175,"ctaUrl":176,"relatedPosts":177},554,"black-friday-2026-tienda-online-aguantar-la-carga",{"fr":12,"en":13,"ar":14,"es":10},"black-friday-2026-boutique-en-ligne-tenir-la-charge","black-friday-2026-online-store-handling-the-load","بلاك-فرايداي-2026-متجر-إلكتروني-تحمل-الضغط","Black Friday 2026: que su tienda online aguante la carga","Congelación de cambios, prueba de carga con k6, caché, base de datos y plan de contingencia: la lista fechada para llegar al pico de noviembre conociendo su límite.",13,0,false,"2026-11-01T00:00:00+00:00","2026-11-01T14:14:31+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":25},3,"Despliegue","deploiement","bg-success\u002F10 text-success",[28],{"id":23,"name":24,"slug":25,"color":26,"icon":25},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fblack-friday-2026-boutique-en-ligne-tenir-la-charge-poster.svg","Una tienda que se cae durante el Black Friday pierde ventas que ningún recordatorio recupera, justo cuando hay más visitantes. El servidor no se adivina: se mide sobre una copia, con herramientas gratuitas, leyendo el pico y no el promedio. Este artículo ofrece un calendario de cuatro semanas, una prueba de carga repetible con k6, los ajustes de caché y de base de datos que conviene revisar y un plan de contingencia que escribir antes del pico. No se promete ninguna capacidad: el límite de su tienda lo da su propia medición.",[34,38,48,51,83,111,114,145,148,151,155,158,161,170],{"type":35,"title":36,"body":37},"h2","El pico es una fecha, y la preparación también","El Black Friday cae el día después de Thanksgiving, que la ley federal de Estados Unidos fija en el cuarto jueves de noviembre. En 2026 eso da el jueves 26 de noviembre para Thanksgiving, el viernes 27 de noviembre para el Black Friday y el lunes 30 de noviembre para el Cyber Monday. Estas fechas se calculan a partir de esa regla: contrástelas con el calendario comercial de su mercado, que puede adelantar o alargar sus propias campañas.\n\nQuedan cuatro semanas en la fecha de este artículo. Es suficiente para congelar, medir y corregir, no para reconstruirlo todo. El objetivo no es tener el servidor más grande posible, sino conocer el límite del suyo antes de que el tráfico lo encuentre por usted, y decidir de antemano qué hará si se alcanza.",{"type":39,"title":40,"items":41},"ul","Qué tumba una tienda durante el pico",[42,43,44,45,46,47],"**Una caché que solo sirve a visitantes anónimos** — en cuanto hay una cookie de carrito o de sesión, PHP y la base de datos recalculan la página en cada solicitud.","**Consultas SQL tolerables con poco tráfico** — una consulta lenta no molesta a nadie con cinco visitantes. Con doscientos a la vez, retiene conexiones y hace esperar a todas las siguientes.","**Demasiados procesos PHP para la memoria disponible** — cada proceso consume RAM.","**Un cambio de última hora** — una extensión, un tema o un código promocional mal configurado subido el día anterior. Es la causa más evitable, y la congelación la elimina.","**Un servicio de terceros llamado en cada página vista** — un módulo de envío, de opiniones o de fidelización consultado de forma síncrona. Si se ralentiza, la tienda se ralentiza con él, aunque su servidor no tenga culpa.","**Ninguna consigna escrita** — nadie sabe quién decide desactivar una función, con qué umbral ni quién avisa al cliente. Se improvisa durante la caída, lo que la alarga.",{"type":35,"title":49,"body":50},"Congelar los cambios: cuatro semanas, una fecha de corte","La congelación es la medida más barata y eficaz: mientras el código y la configuración no se muevan, lo que midió sigue siendo cierto. Elija una fecha de corte, por ejemplo el viernes 20 de noviembre, una semana antes del pico. Después, ninguna actualización del CMS, ninguna extensión nueva, ningún cambio de tema. Solo pasan las correcciones de errores críticos, probadas en la copia y anotadas en un registro.\n\nLa congelación no cubre las actualizaciones automáticas: desactívelas durante el periodo. La tabla siguiente se repite cada año desplazando las fechas.\n\nHaga una copia de seguridad completa justo antes de la congelación (archivos, base de datos, configuración del servidor) y restáurela una vez en la copia cronometrando la operación: esa duración es un dato del plan de contingencia. La diferencia entre instantánea y copia de seguridad se explica en \u003Ca href=\"\u002Fes\u002Fblog\u002Fsnapshot-vs-copia-de-seguridad-de-vps-diferencias-y-restauracion\">snapshot o copia de seguridad de un VPS\u003C\u002Fa>.",{"type":52,"title":53,"headers":54,"rows":58},"comparison","Calendario de preparación para repetir cada año",[55,56,57],"Periodo","Qué se hace","Prueba esperada",[59,63,67,71,75,79],[60,61,62],"Hasta el 6 de noviembre","Inventario: versión del CMS, extensiones, servicios de terceros, tareas programadas, plan de alojamiento","Una tabla fechada, con una persona responsable por línea",[64,65,66],"Del 9 al 13 de noviembre","Copia de la tienda y prueba de carga de referencia","Resultado conservado con el comando exacto y el escenario",[68,69,70],"Del 16 al 19 de noviembre","Ajustes de caché, base de datos y PHP, y nueva prueba","Mismo escenario, mismos parámetros, resultados comparados",[72,73,74],"Viernes 20 de noviembre","Congelación de cambios, copia de seguridad completa","Restauración probada, no solo copia realizada",[76,77,78],"Del 21 al 26 de noviembre","Solo correcciones críticas, tras probarlas en la copia","Registro de cambios al día",[80,81,82],"Del 27 al 30 de noviembre","Vigilancia del pico, plan de contingencia listo para usar","Alertas activas y una persona de guardia designada",{"type":84,"title":85,"steps":86},"steps","Medir sobre una copia con k6 y ab",[87,90,93,96,99,102,105,108],{"title":88,"body":89},"Preparar una copia de la tienda","No pruebe nunca la tienda en producción: una prueba de carga puede tumbarla, ensuciar sus estadísticas y crear pedidos falsos. Restaure una copia de seguridad en un VPS o alojamiento de pruebas de la misma familia que producción, con la misma versión de PHP y la misma base de datos. Anonimice a los clientes, corte el envío de correos y ponga los módulos de pago en modo de prueba.",{"title":91,"body":92},"Escribir el escenario antes de elegir la herramienta","Liste el recorrido de un comprador: portada, página de categoría, página de producto, añadir al carrito, página del carrito y comienzo del proceso de compra. Decida el peso de cada paso, por ejemplo muchas páginas de producto y pocos pagos. Un escenario limitado a la portada mide la caché, no la tienda.",{"title":94,"body":95},"Instalar k6","k6 es la herramienta de pruebas de carga de código abierto de Grafana, un único binario. Siga la instalación descrita en \u003Ca href=\"https:\u002F\u002Fgrafana.com\u002Fdocs\u002Fk6\u002Flatest\u002F\">la documentación oficial de k6\u003C\u002Fa> en la máquina que genera la carga, nunca en el servidor probado, y compruebe con `k6 version`.",{"title":97,"body":98},"Escribir el script sobre una subida progresiva","En un archivo `charge.js`, importe `http` desde `k6\u002Fhttp` y `check` desde `k6`. Declare un escenario con `executor: 'ramping-arrival-rate'` (\u003Ca href=\"https:\u002F\u002Fgrafana.com\u002Fdocs\u002Fk6\u002Flatest\u002Fusing-k6\u002Fscenarios\u002Fexecutors\u002Framping-arrival-rate\u002F\">documentación de k6\u003C\u002Fa>): fija un número de iteraciones por segundo con independencia de la rapidez de respuesta del sitio, lo que se parece más a la llegada de visitantes que un número fijo de usuarios virtuales. Rellene `startRate`, `timeUnit`, `preAllocatedVUs`, `maxVUs` y unas `stages` que suban por escalones. En la función por defecto, encadene `http.get` sobre la página de producto y luego `http.post` sobre añadir al carrito, con un `check` sobre el código 200.",{"title":100,"body":101},"Fijar umbrales que hagan fallar la prueba","Añada `thresholds` a las opciones: `http_req_failed: ['rate\u003C0.01']` y `http_req_duration: ['p(95)\u003C800']`. Los valores son suyos, según lo que toleren sus clientes, no una cifra copiada. Si un umbral no se cumple, k6 termina con un código de salida distinto de cero, lo que permite repetir la prueba en una rutina automática. Los `check` no tienen ese efecto: solo los umbrales hacen fallar la prueba.",{"title":103,"body":104},"Lanzar la prueba y observar el servidor a la vez","Ejecute `k6 run -e BASE_URL=https:\u002F\u002Fcopia.your-domain.com charge.js`. En una sesión SSH en el servidor probado, deje corriendo `top` o `htop` y vigile `free -m` para la memoria y el swap. Anote en qué escalón de la subida despegan los tiempos de respuesta y qué recurso se satura primero: procesador, memoria, conexiones a la base de datos o disco.",{"title":106,"body":107},"Completar con una prueba rápida con ab","ApacheBench comprueba una página concreta en una línea: `ab -n 500 -c 20 -k https:\u002F\u002Fcopia.your-domain.com\u002Fproducto\u002Fejemplo\u002F`. La opción `-n` indica el total de solicitudes, `-c` las simultáneas y `-k` activa la conexión persistente. La documentación de Apache señala que la herramienta no implementa HTTP\u002F1.x por completo: reserve su uso para comparar antes y después de un ajuste, no para medir una capacidad.",{"title":109,"body":110},"Repetir la misma prueba tras cada ajuste","Cambie una sola cosa cada vez: caché, número de procesos PHP, un índice de la base de datos. Vuelva a lanzar exactamente el mismo comando y guarde los resultados en un archivo fechado.",{"type":35,"title":112,"body":113},"Leer el resultado: el pico, no el promedio","Un tiempo de respuesta medio oculta lo que vive el comprador con mala suerte. Lea el percentil 95, o el 99 para los casos más lentos, y la tasa de errores. Una tienda cuyo promedio sigue siendo correcto pero donde uno de cada veinte compradores espera varios segundos pierde carritos sin que el promedio lo indique.\n\nMire también la forma de la curva. Un tiempo estable seguido de una caída brusca indica un límite duro, como un número máximo de conexiones a la base de datos o de procesos PHP. Esta prueba no dice cuántos visitantes reales recibirá: dice a qué ritmo de llegadas su copia, en las condiciones de la prueba, empieza a degradarse.\n\nAquí no se publica ningún resultado numérico, y es deliberado: una cifra medida en una máquina de pruebas no dice nada de la suya, y el script anterior solo se ejecutó contra un destino ficticio para validar su sintaxis, lo que no demuestra ninguna capacidad. La única medición que cuenta es la que tome sobre su propia copia.",{"type":52,"title":115,"headers":116,"rows":120},"Síntomas durante la prueba y pistas a seguir",[117,118,119],"Lo que observa","Causa probable","Qué medir",[121,125,129,133,137,141],[122,123,124],"Tiempo de respuesta que sube con la carga, procesador al máximo","Demasiadas páginas calculadas por PHP en lugar de servirse desde la caché","Proporción de páginas servidas desde la caché para visitantes anónimos",[126,127,128],"Memoria llena y luego uso de swap","Demasiados procesos PHP para la RAM disponible","Memoria por proceso PHP y número de procesos permitidos",[130,131,132],"Errores 502 o 504 a ráfagas","Todos los procesos PHP ocupados, o cola saturada","Ajuste del pool PHP y duración de las solicitudes más lentas",[134,135,136],"Procesador tranquilo pero tiempo de respuesta alto","Espera de la base de datos o de un servicio de terceros","Registro de consultas lentas, duración de las llamadas externas",[138,139,140],"Error \"too many connections\"","Límite de conexiones de la base de datos alcanzado","Valor de `max_connections` y conexiones realmente usadas",[142,143,144],"Páginas de producto rápidas pero carrito lento","El carrito evita la caché, como debe, y carga la base de datos","Consultas que dispara el añadir al carrito",{"type":35,"title":146,"body":147},"Caché: lo que se sirve rápido y lo que nunca debe cachearse","La \u003Ca href=\"https:\u002F\u002Fdeveloper.woocommerce.com\u002Fdocs\u002Fbest-practices\u002Fperformance\u002Fconfiguring-caching-plugins\">documentación de WooCommerce\u003C\u002Fa> es clara: las páginas de carrito, de pedido y de cuenta deben seguir siendo dinámicas, porque muestran información propia del cliente. Exclúyalas de toda caché, en el plugin, en el servidor y en la red de distribución, y compruebe las cookies de sesión y de carrito que usa su versión de WooCommerce. Una página de carrito cacheada por error muestra el carrito de otro comprador, algo peor que una caída.\n\nPara el resto, haga la lista de lo que puede servirse tal cual: portada, categorías, fichas de producto para visitantes sin cookies. El detalle de las rutas que excluir en la red de distribución se trata en \u003Ca href=\"\u002Fes\u002Fblog\u002Fcloudflare-sitio-cliente-agencia-cache-ssl-ajustes\">nuestra guía sobre Cloudflare y la caché de un sitio cliente\u003C\u002Fa>. En PrestaShop, la \u003Ca href=\"https:\u002F\u002Fdevdocs.prestashop-project.org\u002F9\u002Fscale\u002Foptimizations\u002F\">documentación para desarrolladores\u003C\u002Fa> recomienda activar la caché Smarty en la página de Rendimiento y no activar la sección Caché cuando MySQL o MariaDB se ejecuta en la misma máquina. Compruebe estos ajustes en el back office de su versión y repita la prueba tras cada cambio.",{"type":35,"title":149,"body":150},"Base de datos y caché de objetos","Active el \u003Ca href=\"https:\u002F\u002Fmariadb.com\u002Fkb\u002Fen\u002Fslow-query-log-overview\u002F\">registro de consultas lentas de MariaDB\u003C\u002Fa> antes de la prueba: `SET GLOBAL slow_query_log=1;` y luego `SET GLOBAL long_query_time=1;` para un umbral de un segundo, valor que debe ajustar. Estos ajustes en caliente desaparecen al reiniciar; para conservarlos, póngalos en la configuración. A partir de MariaDB 10.11, las variables se renombran con el prefijo `log_slow_`, así que compruebe el nombre de su versión.\n\nUna caché de objetos como Redis alivia la base de datos al guardar en memoria los resultados repetidos. Póngale un límite con `maxmemory` y elija la política de expulsión con `maxmemory-policy`: la \u003Ca href=\"https:\u002F\u002Fredis.io\u002Fdocs\u002Flatest\u002Fdevelop\u002Freference\u002Feviction\u002F\">documentación de Redis\u003C\u002Fa> indica que `allkeys-lru` es una buena opción por defecto cuando una parte de las claves se lee mucho más que el resto, mientras que `noeviction` devuelve un error cuando la memoria está llena. Vigile `keyspace_hits` y `keyspace_misses` en `INFO stats` durante la prueba: una tasa de aciertos baja indica una caché que no sirve de nada.",{"type":152,"title":153,"body":154},"tip","Cargue solo lo que le pertenece","Dirija la prueba a su copia, nunca a la pasarela de pago, a un servicio de envío ni a una API de terceros: la herramienta los sobrecargaría y podrían bloquear su cuenta. Si su escenario debe pasar por el pago, use el modo de prueba del proveedor, con su acuerdo.",{"type":35,"title":156,"body":157},"Dimensionar: una hipótesis que validar con la medición","Si la prueba revela que la copia se satura demasiado pronto, hay dos vías: corregir el software o cambiar de plan. Si la máquina sigue siendo el factor limitante, aumente la memoria o los núcleos por escalones y repita la misma prueba tras cada uno, hasta que la curva aguante con un margen que considere suficiente.\n\nUna recomendación de recursos leída en una web, incluida esta, sigue siendo una hipótesis: solo cuenta su medición sobre su tienda. El método para leer el consumo está detallado en \u003Ca href=\"\u002Fes\u002Fblog\u002Fdimensionar-un-vps-para-el-sitio-de-un-cliente-ram-y-cpu\">dimensionar un VPS para el sitio de un cliente\u003C\u002Fa>. Cuando una máquina ya no basta, \u003Ca href=\"\u002Fes\u002Fblog\u002Fhaproxy-en-un-vps-balanceo-de-carga\">HAProxy en un VPS\u003C\u002Fa> reparte la carga, a costa de una arquitectura más compleja.",{"type":35,"title":159,"body":160},"Si no hace usted mismo esta prueba","Muchos comerciantes confían la tienda a una agencia o a un proveedor de alojamiento. La prueba sigue siendo necesaria: hay que pedirla. Exija tres cosas por escrito antes de la fecha de congelación: el resultado fechado de una prueba de carga sobre una copia, con el escenario y el tiempo de respuesta en el percentil 95 leído en el pico; la lista de cambios previstos y la fecha de congelación acordada; un plan de contingencia firmado, que nombre a la persona autorizada a desactivar funciones o a restaurar la copia de seguridad. Un informe que solo cita el promedio, o un «todo está listo» sin resultado, no responde a la petición.\n\nDecida también con ellos quién zanja el día D: el plan de contingencia cuesta funciones, es decir ventas, y esa decisión corresponde al negocio, no solo al proveedor técnico.",{"type":39,"title":162,"items":163},"El plan de contingencia, una línea por decisión",[164,165,166,167,168,169],"**Quién decide** — una persona designada, con suplente, autorizada a activar el plan sin consultar a un comité.","**Con qué umbral** — por ejemplo una tasa de errores o un tiempo de respuesta que definió durante las pruebas, leído por la monitorización y no a ojo.","**Acción de descarga** — desactivar las funciones no esenciales: recomendaciones de productos, opiniones, búsqueda predictiva, extensiones pesadas probadas una a una durante el ensayo.","**Segunda acción** — activar una página clara de cola o de mantenimiento con la hora prevista de vuelta, en lugar de un error en bruto.","**Último recurso** — restaurar la copia anterior a la congelación, con el tiempo de restauración medido y el acuerdo de quien decide.","**Quién avisa** — al cliente, al equipo de marketing que impulsa la campaña y a su proveedor de alojamiento, con un mensaje ya redactado.",{"type":35,"title":171,"body":172},"Después del pico: conservar la medición para el año próximo","Conserve el script, el comando, los resultados y el registro de cambios en una carpeta fechada. El año próximo repetirá la misma prueba sobre la nueva versión de la tienda, y la comparación mostrará si las extensiones añadidas durante el año han encarecido el recorrido.\n\nPara seguir la disponibilidad de las tiendas durante el periodo, consulte \u003Ca href=\"\u002Fes\u002Fblog\u002Fmonitorizar-disponibilidad-sitios-clientes-agencia-informe-mensual\">el informe de disponibilidad de los sitios cliente\u003C\u002Fa>.","Un pico de ventas merece un servidor cuyo límite usted conozca","Alojamiento y VPS en el mismo lugar que su dominio, copias de seguridad según el plan, migración desde su proveedor actual. Su tienda sigue siendo suya. Planes desde 199 DH\u002Faño para el alojamiento y 99 DH\u002Fmes para un VPS.","Ver la solución para profesionales","\u002Fsolutions\u002Fprofessionnels",[178,198,217],{"id":179,"slug":180,"slugs":181,"title":185,"excerpt":186,"readTime":187,"views":18,"isPinned":19,"publishedAt":188,"updatedAt":189,"category":190,"categories":195,"featuredImage":29,"bgImage":30,"posterImage":197,"relatedSolution":29},547,"dimensionar-un-vps-para-el-sitio-de-un-cliente-ram-y-cpu",{"fr":182,"en":183,"ar":184,"es":180},"dimensionner-vps-ram-cpu-site-client","sizing-a-vps-for-a-client-site-ram-and-cpu","تحديد-حجم-vps-لموقع-عميل-الذاكرة-والمعالج","Dimensionar un VPS para el sitio de un cliente: RAM y CPU","Mida la RAM, la CPU y el disco que usa de verdad el sitio de un cliente en el pico y elija el plan VPS con un margen escrito que pueda defender.",10,"2026-10-31T00:00:00+00:00","2026-10-31T20:50:39+00:00",{"id":191,"name":192,"slug":193,"color":194,"icon":193},5,"Comparativas","comparatif","bg-info\u002F10 text-info",[196],{"id":191,"name":192,"slug":193,"color":194,"icon":193},"\u002Fblog\u002Fcovers\u002Fdimensionner-vps-ram-cpu-site-client-poster.svg",{"id":199,"slug":200,"slugs":201,"title":205,"excerpt":206,"readTime":187,"views":18,"isPinned":19,"publishedAt":188,"updatedAt":207,"category":208,"categories":214,"featuredImage":29,"bgImage":30,"posterImage":216,"relatedSolution":29},549,"cloudflare-sitio-cliente-agencia-cache-ssl-ajustes",{"fr":202,"en":203,"ar":204,"es":200},"cloudflare-site-client-agence-cache-ssl-reglages","cloudflare-client-site-agency-cache-ssl-settings","إعدادات-cloudflare-موقع-العميل-الكاش-ssl","Cloudflare en el sitio de un cliente: SSL Full (strict) y caché","Ponga el sitio de un cliente tras Cloudflare sin bucles de redirección ni páginas privadas en caché: modo Full (strict), reglas de caché y verificaciones.","2026-11-01T14:14:27+00:00",{"id":209,"name":210,"slug":211,"color":212,"icon":213},8,"Seguridad y monitorización","securite-monitoring","bg-rose-500\u002F10 text-rose-400","security",[215],{"id":209,"name":210,"slug":211,"color":212,"icon":213},"\u002Fblog\u002Fcovers\u002Fcloudflare-site-client-agence-cache-ssl-reglages-poster.svg",{"id":218,"slug":219,"slugs":220,"title":224,"excerpt":225,"readTime":226,"views":18,"isPinned":19,"publishedAt":188,"updatedAt":227,"category":228,"categories":229,"featuredImage":29,"bgImage":30,"posterImage":231,"relatedSolution":29},548,"snapshot-vs-copia-de-seguridad-de-vps-diferencias-y-restauracion",{"fr":221,"en":222,"ar":223,"es":219},"snapshot-vs-sauvegarde-vps-difference-restauration","vps-snapshot-vs-backup-what-differs-and-how-restore-works","اللقطة-مقابل-النسخ-الاحتياطي-للـvps-الفرق-والاستعادة","Snapshot vs copia de seguridad de VPS: diferencias y restauración","Snapshot o copia de seguridad de un VPS: qué protege cada uno, qué no protege, cómo restaurar y una regla de decisión para los VPS de sus clientes.",9,"2026-10-31T19:07:30+00:00",{"id":209,"name":210,"slug":211,"color":212,"icon":213},[230],{"id":209,"name":210,"slug":211,"color":212,"icon":213},"\u002Fblog\u002Fcovers\u002Fsnapshot-vs-sauvegarde-vps-difference-restauration-poster.svg",1793543064531]