Desarrolladores

El Camino a 5000 TPS: Escalando Stellar en 2025

Autor

Stellar Development Foundation

Fecha de publicación

En 2025, uno de los principales objetivos de Stellar Development Foundation (SDF) es aumentar el rendimiento teórico de Stellar Core a 5000 transacciones por segundo (TPS). A medida que la adopción de Soroban — la plataforma de contratos inteligentes de Stellar — se acelera y surgen nuevos casos de uso, la escalabilidad es esencial para garantizar que Stellar siga siendo rápido, económico y amigable para los desarrolladores.

Esta publicación proporciona una visión general de alto nivel de nuestros esfuerzos integrales de escalabilidad, categorizados en cinco temas clave. Considéralo una breve introducción a nuestros principales proyectos; profundizaremos en cada área de optimización en publicaciones futuras.

1. Protocolo 23

El Protocolo 23 introduce la ejecución de contratos inteligentes multi-hilo, el almacenamiento en caché de módulos WebAssembly y el estado del contrato inteligente. A pesar de escalar a un verdadero paralelismo N-way y usar técnicas de caché agresivas, la buena noticia es que los operadores de nodos no necesitan actualizar su hardware para beneficiarse de estas mejoras.

Estas mejoras aprovecharán al máximo las CPU y RAM ya comunes en la infraestructura de validadores. Con el tiempo, algunos requisitos de hardware pueden aumentar a medida que el rendimiento aumenta — pero nuestra prioridad ahora mismo es desbloquear la capacidad no utilizada, no imponer nuevas cargas.

2. Paralelismo Incrementado

Históricamente, Stellar Core era mayormente de un solo hilo. A principios de este año, habilitamos el procesamiento de mensajes en segundo plano en Mainnet que produjo resultados prometedores (más sobre esto en un post separado). Ahora, estamos yendo aún más lejos — empujando aún más trabajo al fondo, como la verificación de firmas y la ejecución de bloques. Estas características son actualmente opcionales, pero se espera que se conviertan en predeterminadas después de la votación del Protocolo 23. El resultado: más oportunidades para que Stellar Core haga uso completo de los núcleos de CPU disponibles.

3. Desacoplamiento del Consenso de la Ejecución

En este momento, las etapas de consenso y ejecución de Stellar Core se ejecutan secuencialmente: la red debe finalizar la votación sobre el libro mayor `N` antes de que las transacciones puedan aplicarse a la base de datos, y no comienza a votar sobre el libro mayor `N+1` hasta que termina la ejecución. Esto significa que mientras se ejecuta un conjunto de transacciones, la votación está inactiva, y mientras el Protocolo de Consenso de Stellar está votando, la ejecución del conjunto de transacciones está inactiva.

Estamos rediseñando este flujo para permitir que el consenso y la ejecución se ejecuten en paralelo, donde los nodos votan sobre el libro mayor `N+1` mientras ejecutan `N`. Esto es posible gracias al diseño paralelo-amigable de Soroban, donde todas las entradas que se leerán o escribirán deben especificarse en la huella. Por lo tanto, permite una partición segura de conjuntos de transacciones para los libros mayores N y N+1. Este enfoque en cadena elimina el tiempo de inactividad y nos ayuda a avanzar hacia nuestros objetivos de rendimiento y tiempo de bloque.

4. Caché Agresivo para Cargas de Estado Más Rápidas

Todos los componentes de Stellar Core dependen de BucketListDB para gestionar el estado del libro mayor. A altos volúmenes, las lecturas y escrituras repetidas pueden convertirse en un cuello de botella. Estamos abordando esto con dos cambios:

  • Caché en memoria más agresiva para acelerar las cargas de estado para la validación y ejecución de transacciones.
  • Post-procesamiento en memoria para aumentar la velocidad de escritura durante el tiempo de compromiso.

Estos cambios ofrecen mejoras sustanciales en el rendimiento utilizando la RAM ya provista por la mayoría de los operadores.

5. Evaluación de Rendimiento Más Inteligente

Escalar sin medición es adivinar. Estamos refinando nuestro marco de referencia para minimizar el ruido de medición de herramientas de carga sintéticas y la sobrecarga de métricas — ayudándonos a comprender mejor los límites reales del sistema.

Con cada lanzamiento de Stellar Core, publicamos nuestros resultados de rendimiento teórico. Puedes seguirlos aquí:

https://github.com/stellar/supercluster/blob/main/doc/theoretical-max-tps.md

En este enlace, puedes encontrar la metodología completa, los resultados actuales e instrucciones para reproducir. Nuestro objetivo es mejorar el marco de referencia mientras continuamos publicando resultados regularmente con cada lanzamiento.

Lo Que Esto Significa para la Red

Se espera que estas mejoras lleven el rendimiento teórico de Stellar Core hasta 5000 TPS en las evaluaciones de 2025. Pero lograr el rendimiento teórico es solo una parte del rompecabezas. Estas actualizaciones deben implementarse de manera segura e incremental — y los sistemas aguas abajo como Horizon y Stellar RPC también necesitarán escalar para manejar mayores volúmenes de transacciones.

Un mayor rendimiento abre la puerta a nuevas aplicaciones, sin comprometer los tiempos de confirmación o la fiabilidad. En última instancia, hace que Stellar sea más atractivo para los desarrolladores, más resistente a picos de demanda y mejor posicionado para servir a los usuarios que dependen de transacciones rápidas y de bajo costo.

SDF está comprometido a ayudar a la red de Stellar a escalar responsablemente: compartiendo datos de rendimiento de manera transparente, manteniendo los costos de hardware razonables para impulsar la descentralización y entregando la capacidad que el ecosistema necesita para crecer.