Por que o Dusk teve de impor um limite à computação
Eu estava pensando nisso enquanto observava como contratos inteligentes realmente funcionam no Dusk
No começo, um limite de computação soou como uma restrição
Se um contrato precisa de mais trabalho, por que não deixá-lo continuar rodando
Então comecei a pensar no que acontece quando centenas de contratos disputam os mesmos recursos da rede
Um contrato inteligente não está sendo executado em um computador isolado
Sua execução precisa ser processada pela rede, e cada computação extra significa mais trabalho para os nós
Então, se não houvesse um limite prático, uma transação complexa ou mal projetada poderia consumir uma quantidade desproporcional de recursos
Foi aí que o modelo de gas do Dusk começou a fazer mais sentido para mim
Uma transação define um limite de gas, e a rede cobra pelo gas realmente usado. Se a execução ficar sem gas, a transação reverte em vez de continuar indefinidamente
Também encontrei um detalhe interessante no trabalho de engenharia do Dusk: transações abaixo do limite mínimo de gas podem ser interrompidas antes de serem processadas, especificamente para reduzir a carga computacional desnecessária e o impacto de spam
Então o limite não está dizendo, na prática,
que você não pode fazer muita coisa
É mais como
Você precisa pagar pela quantidade de computação que está pedindo para a rede executar
Isso mudou a forma como eu enxerguei o assunto
Em um blockchain financeiro, o uso previsível de recursos não é um detalhe técnico pequeno
Faz parte de manter a camada de execução utilizável quando muitas aplicações estão rodando ao mesmo tempo
Eu originalmente via o limite de computação como uma limitação
Agora eu vejo mais como uma forma de garantir que um contrato não passe a tratar toda a rede como se fosse o seu computador pessoal
#dusk $DUSK @Dusk
Eu estava pensando nisso enquanto observava como contratos inteligentes realmente funcionam no Dusk
No começo, um limite de computação soou como uma restrição
Se um contrato precisa de mais trabalho, por que não deixá-lo continuar rodando
Então comecei a pensar no que acontece quando centenas de contratos disputam os mesmos recursos da rede
Um contrato inteligente não está sendo executado em um computador isolado
Sua execução precisa ser processada pela rede, e cada computação extra significa mais trabalho para os nós
Então, se não houvesse um limite prático, uma transação complexa ou mal projetada poderia consumir uma quantidade desproporcional de recursos
Foi aí que o modelo de gas do Dusk começou a fazer mais sentido para mim
Uma transação define um limite de gas, e a rede cobra pelo gas realmente usado. Se a execução ficar sem gas, a transação reverte em vez de continuar indefinidamente
Também encontrei um detalhe interessante no trabalho de engenharia do Dusk: transações abaixo do limite mínimo de gas podem ser interrompidas antes de serem processadas, especificamente para reduzir a carga computacional desnecessária e o impacto de spam
Então o limite não está dizendo, na prática,
que você não pode fazer muita coisa
É mais como
Você precisa pagar pela quantidade de computação que está pedindo para a rede executar
Isso mudou a forma como eu enxerguei o assunto
Em um blockchain financeiro, o uso previsível de recursos não é um detalhe técnico pequeno
Faz parte de manter a camada de execução utilizável quando muitas aplicações estão rodando ao mesmo tempo
Eu originalmente via o limite de computação como uma limitação
Agora eu vejo mais como uma forma de garantir que um contrato não passe a tratar toda a rede como se fosse o seu computador pessoal
#dusk $DUSK @Dusk
