Suscríbete para recibir notificaciones de nuevas publicaciones:

Disponibilidad general de la API Browser Rendering, implementación de Cloudflare Snippets, SWR y, por último, Workers for Platforms, que ya está al alcance de todos los usuarios

2024-04-05

5 min de lectura
Esta publicación también está disponible en English, 繁體中文, Français, Deutsch, 日本語, 한국어 y 简体中文.

La API Browser Rendering ya está disponible para todos los clientes de pago de Workers y hemos mejorado la gestión de sesiones

Browser Rendering API GA, rolling out Cloudflare Snippets, SWR, and bringing Workers for Platforms to our PAYGO plans

En mayo de 2023, anunciamos el programa beta abierto de la API Browser Rendering. Browser Rendering permite a los desarrolladores controlar e interactuar mediante programación con una instancia de navegador sin interfaz gráfica y crear flujos de automatización para sus aplicaciones y sus productos.

Al mismo tiempo, lanzamos una versión de la biblioteca Puppeteer que funciona con Browser Rendering. Con ella, los desarrolladores pueden utilizar una API conocida sobre Cloudflare Workers para crear todo tipo de flujos de trabajo, como hacer capturas de pantalla de páginas o pruebas automáticas de software.

Hoy, llevamos Browser Rendering un paso más allá: sale de la versión beta y está disponible en todos los planes de pago de Workers. Además, mejoramos nuestra API e incorporamos una nueva función que llevamos mucho tiempo comentando en la comunidad beta abierta: la gestión de sesiones.

Gestión de sesiones

La gestión de sesiones permite a los desarrolladores reutilizar los navegadores abiertos anteriormente en los scripts de Worker. La reutilización de sesiones del navegador te ofrece la ventaja de que no necesitas instanciar un nuevo navegador para cada solicitud y cada tarea, lo que aumenta drásticamente el rendimiento y reduce los costes.

Antes, para mantener activa una instancia del navegador y reutilizarla, tenías que implementar código complejo utilizando Durable Objects. Ahora, hemos simplificado esa tarea manteniendo tus navegadores en ejecución en segundo plano y ampliando la API de Puppeteer con nuevos métodos de gestión de sesiones que te permiten acceder a todas tus sesiones en ejecución, al historial de actividades y a los límites activos.

Así es como puedes listar tus sesiones activas:

En la documentación para desarrolladores hemos añadido un script de Worker de ejemplo de cómo utilizar la gestión de sesiones.

const sessions = await puppeteer.sessions(env.RENDERING);
console.log(sessions);
[
   {
      "connectionId": "2a2246fa-e234-4dc1-8433-87e6cee80145",
      "connectionStartTime": 1711621704607,
      "sessionId": "478f4d7d-e943-40f6-a414-837d3736a1dc",
      "startTime": 1711621703708
   },
   {
      "sessionId": "565e05fb-4d2a-402b-869b-5b65b1381db7",
      "startTime": 1711621703808
   }
]

Análisis y registros

La observabilidad es una característica fundamental de cualquier producto de Cloudflare. Puedes encontrar análisis detallados y registros de tu uso de Browser Rendering en el panel de control, en la sección Worker y Pages de tu cuenta.

Browser Rendering ya está disponible para todos los clientes con un plan de pago de Workers. Durante este periodo, cada cuenta está limitada para ejecutar dos nuevos navegadores por minuto y dos navegadores simultáneos sin coste alguno. Consulta nuestra página para desarrolladores para empezar.

Estamos implementado el acceso a Cloudflare Snippets

Los Snippets, potentes, programables y gratuitos, son la mejor forma de realizar modificaciones complejas de solicitudes y respuestas HTTP en Cloudflare. Lo que antes era demasiado complicado de conseguir utilizando los productos de reglas, ahora es posible con Snippets. Desde el anuncio inicial durante Developer Week 2022, la promesa de ampliar la funcionalidad de reglas sin configuración escribiendo un sencillo código JavaScript mantiene entusiasmada a la comunidad de Cloudflare.

Solo durante los 3 primeros meses de 2024, el volumen de tráfico que ha pasado a través de Snippets se ha multiplicado por más de 7, de un promedio de 2200 solicitudes por segundo a principios de enero a más de 17 000 en marzo.

Sin embargo, en lugar de abrir las compuertas y permitir el acceso a millones de usuarios de Cloudflare para probar (y potencialmente dañar) Snippets de las formas más inesperadas, vamos a ir paso a paso y optar por una implantación por fases, como las implementaciones graduales que hemos lanzado recientemente para Workers.

En las próximas semanas, el 5 % de los usuarios de Cloudflare empezarán a ver "Snippets" en la pestaña Reglas del menú de zonas de su panel de control. Si formas parte del primer 5 %, no lo dudes y prueba la rapidez y la eficacia de Snippets incluso para casos de uso avanzados como cambiar dinámicamente la fecha en los encabezados o realizar pruebas A/B mediante la función 'math.random'. Sea cual sea el uso que le des a Snippets, ten en cuenta que todavía es una versión alfa, así que no lo utilices aún para el tráfico de producción.

Hasta entonces, estate atento a la nueva pestaña Snippets del panel de control de Cloudflare y descubre la eficacia y la flexibilidad de Snippets en la documentación para desarrolladores.

Próximamente: Revalidación asíncrona con stale-while-revalidate

Una de las funciones más solicitadas por nuestros clientes es la revalidación asíncrona con la directiva de caché stale-while-revalidate (SWR), y te la ofreceremos en el segundo semestre de 2024. Esta funcionalidad estará disponible por diseño como parte de nuestra nueva arquitectura de la CDN que estamos desarrollando con Rust priorizando el rendimiento y la seguridad de la memoria.

Actualmente, cuando un cliente solicita un recurso, como una página web o una imagen, Cloudflare comprueba si el activo está en la caché y,  si está disponible, proporciona una copia almacenada en la caché. Si el archivo no está en la caché o ha caducado y está obsoleto, Cloudflare se conecta al servidor de origen para comprobar si hay una versión nueva del archivo y reenvía esta versión nueva al usuario final. Este tiempo de espera añade latencia a estas solicitudes y repercute en el rendimiento.

Stale-while-revalidate es una directiva de caché que permite que la versión caducada u obsoleta del activo se sirva al usuario final, al mismo tiempo que Cloudflare puede comprobar el servidor de origen para ver si hay disponible una versión más nueva del recurso. Si existe una versión actualizada, el servidor de origen la reenvía a Cloudflare, actualizando la caché en el proceso. Este mecanismo permite al cliente recibir rápidamente una respuesta de la caché, mientras que garantiza que siempre tenga acceso al contenido más actualizado. Stale-while-revalidate logra un equilibrio entre servir el contenido de forma eficiente y garantizar que está actualizado, lo que se traduce en un mejor rendimiento y una experiencia del usuario más fluida.

Los clientes que quieran formar parte de nuestro grupo de verificadores de la versión beta y participar en la diversión pueden registrarse aquí. ¡Te avisaremos cuando la función esté lista para probarla!

Próximamente, el 16 de abril de 2024: Workers for Platforms para nuestro plan de pago por uso

Hoy, nos complace compartir que el 16 de abril Workers for Platforms estará disponible para todos los desarrolladores mediante nuestro nuevo plan de pago por uso de 25 USD.

Workers for Platforms está cambiando la forma de desarrollar software: te ofrece la posibilidad de integrar la personalización y la adaptación directamente en tu producto. Con Workers for Platforms, puedes implementar código personalizado en nombre de tus usuarios o dejar que ellos implementen directamente su propio código en tu plataforma, sin necesidad de que tú o tus usuarios gestionéis ninguna infraestructura. Puedes utilizar Workers for Platforms con todas las interesantes soluciones anunciadas durante esta Developer Week. Admite todos los enlaces que proporciona Workers (como Workers AI D1 y Durable Objects), así como Python Workers.  

Esto es lo que algunos de nuestros clientes (desde empresas a startups) están desarrollando en Workers for Platforms:

  • Shopify Oxygen es una plataforma de alojamiento para su marco de comercio electrónico Hydrogen, basado en Remix, ¡y se ha desarrollado en Workers for Platforms! La combinación Hydrogen/Oxygen ofrece a los comerciantes de Shopify el control sobre la experiencia del comprador sin las restricciones de las plantillas genéricas de tienda de comercio electrónico.

  • Grafbase es una plataforma de datos para que los desarrolladores creen una API GraphQL sin servidor que unifica las fuentes de datos de toda una empresa en un único punto final. Utilizan Workers for Platforms para ofrecer a sus desarrolladores el control y la flexibilidad necesarios para implementar su propio código escrito en JavaScript/TypeScript o WASM.

  • Triplit es una base de datos de código abierto que sincroniza datos entre el servidor y el navegador en tiempo real. Permite a los usuarios crear aplicaciones de baja latencia y en tiempo real con funciones integradas como la consulta relacional, la gestión de esquemas y el almacenamiento en el servidor. Su motor de consulta y sincronización se ha desarrollado sobre Durable Objects, y utilizan Workers for Platforms para que sus clientes puedan empaquetar JavaScript personalizado junto con su instancia de base de datos de Triplit.

Herramientas de observabilidad y controles a nivel de plataforma

Workers for Platforms no solo te permite implementar Workers en tu plataforma: también sabemos lo importante que es tener observabilidad y control sobre los Workers de tus usuarios. Con este objetivo, tenemos algunas soluciones que te ayudarán:

  • Límites personalizados: establece límites de tiempo de CPU o de solicitudes secundarias en los Workers de tus usuarios. Puedes utilizar esta función para configurar límites con el fin de controlar tus costes en Cloudflare o de definir tu propio modelo de precios y paquetes, o con esta doble finalidad. Por ejemplo, si utilizas un modelo freemium en tu plataforma, puedes reducir el límite de tiempo de CPU para los clientes de tu nivel gratuito.

  • Tail Workers: los eventos de Tail Workers contienen metadatos sobre el Worker y mensajes console.log(), y capturan cualquier excepción no controlada. Puedes utilizar esta solución para proporcionar a tus desarrolladores un registro en tiempo real que les permita detectar errores y solucionar problemas en tiempo real.

  • Outbound Workers: consigue visibilidad de todas las solicitudes salientes de los Workers de tus usuarios. Outbound Workers se sitúa entre los Workers de los usuarios y las solicitudes fetch() que estos envían, de modo que tienes completa visibilidad de la solicitud antes de su envío a Internet.

Precio

Queríamos asegurarnos de que Workers for Platforms fuera asequible para los aficionados, los desarrolladores en solitario y los desarrolladores independientes. Workers for Platforms forma parte de un nuevo plan de pago por uso de 25 USD, e incluye:

.tg {border-collapse:collapse;border-color:#ccc;border-spacing:0;} .tg td{background-color:#fff;border-color:#ccc;border-style:solid;border-width:1px;color:#333; font-family:Arial, sans-serif;font-size:14px;overflow:hidden;padding:10px 5px;word-break:normal;} .tg th{background-color:#f0f0f0;border-color:#ccc;border-style:solid;border-width:1px;color:#333; font-family:Arial, sans-serif;font-size:14px;font-weight:normal;overflow:hidden;padding:10px 5px;word-break:normal;} .tg .tg-buh4{background-color:#f9f9f9;text-align:left;vertical-align:top} .tg .tg-0lax{text-align:left;vertical-align:top}

Included Amounts
Requests 20 million requests/month
+$0.30 per additional million
CPU time 60 million CPU milliseconds/month
+$0.02 per additional million CPU milliseconds
Scripts 1000 scripts
+0.02 per additional script/month

Importes incluidos

Requests

20 million requests/month+$0.30 per additional million

CPU time

60 million CPU milliseconds/month+$0.02 per additional million CPU milliseconds

Scripts

1000 scripts+0.02 per additional script/month

¡Workers for Platforms estará disponible para su compra el 16 de abril de 2024!

Workers for Platforms estará disponible para su compra en la pestaña Workers for Platforms del panel de control de Cloudflare el 16 de abril de 2024.

Mientras tanto, para saber más sobre Workers for Platforms, consulta nuestro proyecto de inicio y la documentación para desarrolladores.

Protegemos redes corporativas completas, ayudamos a los clientes a desarrollar aplicaciones web de forma eficiente, aceleramos cualquier sitio o aplicación web, prevenimos contra los ataques DDoS, mantenemos a raya a los hackers, y podemos ayudarte en tu recorrido hacia la seguridad Zero Trust.

Visita 1.1.1.1 desde cualquier dispositivo para empezar a usar nuestra aplicación gratuita y beneficiarte de una navegación más rápida y segura.

Para saber más sobre nuestra misión para ayudar a mejorar Internet, empieza aquí. Si estás buscando un nuevo rumbo profesional, consulta nuestras ofertas de empleo.
Developer Week (ES)DesarrolladoresDeveloper PlatformApplication ServicesNoticias de productosGeneral Availability (ES)Cloudflare Workers

Síguenos en X

Tanushree Sharma|@_tanushreeeee
Celso Martinho|@celso
Matt Bullock|@mibullock
Cloudflare|@cloudflare

Publicaciones relacionadas

31 de octubre de 2024, 13:00

Moving Baselime from AWS to Cloudflare: simpler architecture, improved performance, over 80% lower cloud costs

Post-acquisition, we migrated Baselime from AWS to the Cloudflare Developer Platform and in the process, we improved query times, simplified data ingestion, and now handle far more events, all while cutting costs. Here’s how we built a modern, high-performing observability platform on Cloudflare’s network....

24 de octubre de 2024, 13:05

Build durable applications on Cloudflare Workers: you write the Workflows, we take care of the rest

Cloudflare Workflows is now in open beta! Workflows allows you to build reliable, repeatable, long-lived multi-step applications that can automatically retry, persist state, and scale out. Read on to learn how Workflows works, how we built it on top of Durable Objects, and how you can deploy your first Workflows application....