Consumir el firehose de Bluesky por menos de $2.50 al mes
(bsky.bad-example.com)- Los datos públicos de Bluesky han crecido hasta una escala de 15 millones de usuarios, y con Jetstream se puede recibir en tiempo real todo el flujo de eventos de la red para hacer experimentos
- Como es un firehose en formato de feed JSON por WebSocket, también se puede conectar desde el navegador, y es posible empezar gratis con experimentos simples de datos en tiempo real
- La app de ejemplo detecta eventos
deletey muestra por última vez el texto de publicaciones recién borradas en un feed efímero y anonimizado - El entorno de operación usa una máquina shared-cpu-1x con 256 MB de RAM de Fly.io y un volumen persistente de 2 GB, con costos de $1.94 y $0.30 al mes respectivamente
- No se puede garantizar que todas las apps del firehose funcionen así de pequeñas, pero algunas apps de consumo en tiempo real sí pueden operar suficientemente bien solo con una instancia mínima
Recibir el firehose de Bluesky con Jetstream
- Los datos de Bluesky son muy públicos, y actualmente existe un conjunto de datos públicos a escala de 15 millones de usuarios
- Si usas Jetstream, puedes recibir en tiempo real todo lo que ocurre en la red como un feed JSON por WebSocket
- Incluso es posible conectarse directamente al firehose desde el navegador y hacer experimentos simples, como extraer palabras aleatorias de las publicaciones que se están publicando en ese momento
Una pequeña app que muestra eventos de borrado
- La app experimental deletions.bsky.bad-example.com escucha todos los eventos
deletedel firehose y muestra el texto recién borrado en un feed efímero y anonimizado - Esta app fue creada cuando la red de Bluesky era mucho más pequeña que ahora, y hoy la velocidad de la red ya se ha vuelto lo bastante rápida como para ser caótica
- Funciona en la instancia más pequeña de Fly.io
- Fly machine, shared-cpu-1x, 256MB RAM: $1.94 al mes
- Volumen persistente de 2 GB: $0.30 al mes
- El flujo de funcionamiento se compone de un caché simple y emparejamiento de eventos de borrado
- Recibe todos los nuevos eventos
create-postde la colecciónapp.bsky.feed.post - Filtra las publicaciones vacías y aplica redacción a menciones y enlaces
- Guarda el texto limpio en pebbledb con la clave
did+rkey - Cada pocos segundos, elimina por rango los textos guardados con más de 48 horas de antigüedad
- Cuando llega un evento
delete-post, busca el texto en el caché y, si existe, lo transmite a los observadores actuales
- Recibe todos los nuevos eventos
- Aunque el alcance funcional es pequeño, opera de forma estable en la instancia mínima de Fly.io, y algunas apps más interesantes también podrían funcionar con una escala similar
Aún no hay comentarios.