Artículo de Blog

Cómo la Estructura de Tarifas de Soroban Contribuye a la Escalabilidad de la Red de Stellar

Autor

Bri Wylde

Fecha de publicación

Desde el anuncio de Soroban, se ha promocionado como una plataforma de contratos inteligentes escalable, siendo su novedosa estructura de tarifas uno de los principales puntos de apoyo. La escalabilidad significa que una red puede funcionar bajo una cantidad aumentada de uso mientras mantiene la descentralización y la seguridad. Blockchain tiene el potencial de transformar los pagos transnacionales, conectar la dispar economía mundial y abrir acceso a nueva y existente infraestructura financiera. Y para hacer esto, debe ser capaz de soportar un gran número de cuentas y un alto volumen de transacciones, lo que significa que necesita ser diseñada para escalar.

El diseño de Soroban ha considerado la escalabilidad desde el inicio. Por ejemplo, el reciente Preview 10 lanzamiento vio la implementación de la fase inicial de un modelo de expiración de estado sin precedentes. Este modelo limita el crecimiento del libro mayor y asegura que los datos de los contratos inteligentes en la red sean valiosos y útiles permitiendo que las entradas del libro mayor no utilizadas expiren mientras también mantiene bajos los costos de participación en la red. Hay mucho más sobre el modelo de expiración de estado que puedes leer en esta reciente publicación de blog.

El modelo de tarifas de Soroban también ha sido diseñado con la escalabilidad en mente. Se diferencia de otras redes en que los desarrolladores pagan una tarifa de recurso que se contabiliza para cada tipo de recurso, permitiendo que el consumo de recursos individuales se precio de manera independiente. Debido a esto, el presupuesto de un bloque también puede establecerse por recurso medido. Este diseño permite que los recursos de un bloque se usen de manera más eficiente, ya que los contratos pueden ser construidos deliberadamente para consumir todos los recursos medidos disponibles.

Para hacer esto posible, Soroban tiene un detallado sistema de medición que mide con precisión el consumo de recursos de una transacción. Y para hacer los contratos aún más eficientes, Soroban emplea limitaciones de recursos por transacción.

Con estos sistemas en su lugar, los contratos inteligentes de Soroban están certificados para ser máquinas de lucha ágiles y eficientes construidas para soportar la escalabilidad, sostenibilidad y longevidad de la red de Stellar.

Tarifas de recursos, presupuestos y consumo

Para entender qué hace tan única la estructura de tarifas de Soroban, volvamos a lo básico: una blockchain puede describirse como un conjunto de recursos computacionales que se venden para realizar trabajo. Cada bloque en una blockchain representa un período de tiempo y tiene un número establecido de recursos disponibles para “vender” antes de que el bloque sea finalizado. Para tener una red blockchain funcionando eficientemente, quieres que todos los recursos disponibles en cada bloque sean utilizados o “vendidos”.

La mayoría de las blockchains usan un sistema de medición de recursos demasiado simplificado. La máquina virtual EVM, por ejemplo, mide el consumo de recursos en gas. Y el gas es una métrica única que abarca todos los diversos recursos, incluyendo computación, memoria y almacenamiento. Cada bloque tiene un presupuesto total de gas que es consumido por las transacciones, y cada operación tiene un costo en gas. Dado que EVM convierte múltiples métricas diferentes en una sola medida, todos los recursos subyacentes no terminan siendo utilizados, lo que asume recursos desperdiciados en cada bloque y hace que el sistema sea ineficiente en general.

¿Por qué? Aquí hay un ejemplo (muy) simplificado.

Digamos que tenemos un nuevo bloque EVM. Este bloque tiene disponibles 100 unidades de computación, 50 unidades de memoria y 25 unidades de almacenamiento, todo ello sumado en un presupuesto de gas disponible. Si alguien tiene una transacción intensiva en almacenamiento que utiliza todas las 25 unidades de almacenamiento, esto agotará todo el presupuesto de gas para ese bloque. Dado que el sistema no querrá arriesgarse a otra transacción que use más almacenamiento y cause un fallo, 100 unidades de computación y 50 unidades de memoria quedan sin usar y desperdiciadas en ese bloque.

Alternativamente, Soroban expone la disponibilidad individual de recursos de cada bloque, incluyendo lecturas y escrituras de entradas de libro mayor, instrucciones de CPU y RAM, lo que permite a los desarrolladores construir sus contratos basados en estos recursos medidos específicos y ayuda a asegurar que todos los recursos disponibles en cada bloque sean completamente utilizados. Este diseño permite procesar más transacciones en cada bloque usando la misma cantidad de recursos.

La eficiencia de la red de Soroban facilita a los validadores procesar y validar bloques, ayudando finalmente a mantener costos de validadores razonables para que la participación en la red siga siendo accesible, una parte importante de la descentralización.

Ahora, por supuesto, se alienta a los desarrolladores a construir sus contratos de la manera más eficiente posible para pagar una tarifa de transacción más baja. Y si eso no es suficiente incentivo, los usuarios de contratos inteligentes también pagan una tarifa más baja para invocar contratos menos intensivos en recursos, por lo que los desarrolladores están aún más motivados para escribir contratos eficientes para mantener bajas las tarifas de los usuarios, y las personas son justamente cobradas por lo que usan. También es importante recordar que las tarifas de la red Stellar van a un fondo de tarifas que actualmente está bloqueado y no es recolectado por ninguna otra persona u organización, por lo que no hay incentivo para que los validadores (o alguien más) aumenten los precios de las tarifas. Esto proporciona estabilidad de precios a largo plazo incluso a medida que la adopción y el uso crecen.

No solo se alienta y se incentiva la construcción de contratos eficientes en Soroban, sino que también se les da a los desarrolladores las herramientas para hacerlo.

Medición

Dado que Soroban cobra una tarifa basada en el consumo de recursos, también debe tener un sistema preciso para medir estos recursos. Soroban emplea un sistema de conteo y medición detallado que contabiliza los costos de recursos incurridos durante la ejecución de un contrato inteligente y sirve como entrada para los cálculos de tarifas.

Antes de la ejecución del contrato, el desarrollador del contrato inteligente declara sus límites de recursos individuales en la transacción. Durante el ciclo de vida de la transacción, el modelo de medición mide el consumo de recursos e incrementa el medidor en consecuencia. El medidor verifica el consumo de recursos contra los límites de recursos, y si se excede algún límite, la ejecución de la transacción se termina. De esa manera, nadie paga más de lo que está dispuesto a pagar. Si la ejecución termina dentro de los límites especificados, los totales medidos se registran y se utilizan para los cálculos de tarifas.

Este sistema de medición detallado hace posible la tarifa de recursos granular de Soroban e incentiva la eficiencia de recursos.

Limitaciones de recursos

Mientras que las tarifas y la estructura de medición fomentan un diseño optimizado de contratos inteligentes, las restricciones de recursos realmente lo hacen cumplir. Soroban tiene un límite global de red por transacción sobre la cantidad de recursos que una transacción puede consumir. Estas limitaciones de recursos son, como otras configuraciones de red, determinadas por una votación de validadores como parte del Stellar Consensus Protocol (SCP), un ejemplo de cómo la gobernanza es descentralizada en la red de Stellar. Estas limitaciones no están fijadas en piedra, y los validadores pueden votar para ajustarlas en respuesta al uso de la red y las necesidades del ecosistema.

Las limitaciones de recursos de Soroban obligan a los desarrolladores a ser económicos al escribir contratos y a pensar más cuidadosamente sobre cómo van a usar los recursos de manera más efectiva. Aunque esto puede ser más trabajo al principio, ayuda a mantener bajos los costos de los validadores porque hay menos desperdicio en la red. Los validadores de la red Stellar solo requieren 8GB de RAM (a diferencia, por ejemplo, de los 256GB de RAM o más recomendados por Solana), y las restricciones de recursos ayudarán a mantenerlo así.

Las limitaciones de recursos hacen más para asegurar que lo que está en la red sea eficiente y valioso y desalientan la creación de tráfico malo ilimitado y casos de uso pobres y spam.

Soroban, construido para durar

Los diseñadores de Soroban están tomando decisiones deliberadas y bien pensadas para apoyar la escalabilidad. La expiración de estado, las tarifas de recursos, un sistema de medición finamente detallado y limitaciones de recursos contribuyen a tener contratos inteligentes valiosos y eficientes y precios justos y predecibles, lo que en última instancia lleva a una red blockchain sostenible y escalable.

Si toda esta charla sobre escalabilidad y sostenibilidad te inspira, ¡hay muchas formas de involucrarte! Soroban actualmente está en vivo en Futurenet, una red de prueba compartida, con el lanzamiento de Mainnet programado para más adelante este año. Consulta los documentos si estás interesado en tutoriales y contenido informativo, dirígete al Desafío de Dapps para un curso paso a paso que te enseña sobre la construcción de dapps en Soroban, y si estás listo para empezar a contribuir, Sorobounty Espectacular ahora está aceptando envíos de contenido educativo enfocado en dapps.

Y, como siempre, el Discord de Desarrolladores de Stellar es un gran lugar para aprender y obtener respuestas a tus preguntas durante tu viaje por Soroban.