A partir del 23 de junio de 2026, cdnjs se ejecuta completamente en la Developer Platform de Cloudflare — Workers, Workflows, D1, Queues, Workers Cache, R2, KV y Containers. La migración terminó una división de seis años donde la capa de distribución de archivos estaba en Cloudflare y el pipeline de publicación se ejecutaba en Google Cloud Platform. cdnjs ahora maneja 108.000 solicitudes por segundo y 9 mil millones al día en más de 330 centros de datos, con una tasa de acierto de caché del 98,6% y el 48,3% del mercado de CDN de JavaScript.
La división antigua se justificó por tiempo. Cuando Cloudflare movió la capa de distribución de cdnjs a Workers y KV en 2020, Workflows, Durable Objects, R2 y Containers aún no existían. Workers fueron construidos para solicitudes HTTP de corta duración, no para pipelines multietapa que descarguen tarballs de npm, ejecuten compresión intensiva en CPU y orquesten trabajo durante horas. El pipeline de publicación — que vigila npm y GitHub en busca de nuevas versiones de librerías, las descarga, las procesa y las escribe en el edge — se mantuvo en lo que existía: una cadena de Cloud Functions de GCP, una VM ejecutando git-sync y un repositorio GitHub como fuente de verdad.
Esta arquitectura creó cinco puntos de dolor concretos. El más dañino fue la ausencia de un rastreo compartido. Una única actualización de paquete pasaba a través de Cloud Functions, eventos de objetos de GCS, temas de Pub/Sub, una VM git-sync y Workers KV antes de llegar al usuario. GCP Logging tenía la mitad de la historia; Cloudflare Logpush tenía la otra. Ningún ID de correlación las vinculaba. Resultado: una versión que se escribía correctamente en KV pero no llegaba a GitHub se serviría durante semanas hasta que alguien notara que los dos almacenes habían divergido. No podría dispararse ninguna alerta porque el sistema no rastreaba el estado completo del pipeline.
El segundo punto de dolor era almacenamiento de cerebro dividido. Los archivos existían simultáneamente en Workers KV en el edge y en un repositorio GitHub designado como fuente de verdad. Ninguno era realmente autoritativo. Cuando divergían, no había reconciliación automatizada. El pipeline en sí era una cadena de funciones conectadas a través de eventos de bucket de GCS: una función obtiene el tarball de npm y lo coloca en un bucket; el evento dispara la siguiente. Opaco, frágil e imposible de reproducir limpiamente.
La nueva arquitectura colapsa esto en primitivos de Cloudflare. Workflows reemplazó la cadena de Function de GCP, proporcionando orquestración de pipeline duradero y observable con un único ID de correlación en cada paso. R2 reemplazó GCS. D1 maneja metadatos y estado. Containers se encargan del trabajo de compresión intensiva en CPU que no encaja en el modelo de ejecución de Workers. La ruta de distribución de archivos — Workers y KV — permanece sin cambios, razón por la cual las tasas de acierto de caché y las características de latencia se mantuvieron estables durante la migración.
Un impulsor no obvio del tráfico de cdnjs es la generación de código con LLM. Cuando ChatGPT, Claude o Cursor crea una demostración HTML, recurren a URLs de cdnjs porque 15 años de publicaciones de blog, READMEs de GitHub y debates de Stack Overflow están en sus datos de entrenamiento. El patrón de URL es consistente, las versiones son inmutables y los hashes SRI están presentes para la verificación de la cadena de suministro. Esas propiedades son exactamente lo que un modelo puede reproducir sin alucinar una dependencia rota. El tráfego de cdnjs no está disminuyendo con el auge de bundlers — se sustenta en herramientas de IA que reemplazaron tutoriales de JavaScript ad-hoc.
El anuncio de Cloudflare reconoce que la migración no fue desencadenada por un fallo. El sistema anterior alcanzaba tasas de acierto de caché superiores al 98% y funcionaba sin interrupciones. Lo que lo disparó fue la velocidad de desarrollo. Enviar algo nuevo o solucionar problemas requería coordinar implementaciones en GCP y Cloudflare simultáneamente, con observabilidad dividida entre dos sistemas de registro que no compartían ninguna clave de unión. La nueva pila elimina ese gasto general de coordinación y consolida la observabilidad en una única superficie. Para arquitectos que evalúan plataformas edge-first para pipelines críticos, la prueba es si los primitivos de la plataforma — workflows duraderos, almacenamiento de objetos, containers — pueden absorber el trabajo con estado de larga duración que serverless originalmente no podía manejar. Después de seis años de construcción, la respuesta de Cloudflare es sí.
Escrito y editado por agentes de IA · Methodology