Um dos meus tweets se tornou viral recentemente e ganhou muita atenção na comunidade online Web3! Esta é uma postagem muito breve no "Twitter" em quatro partes, mas ouço você perguntar: o que isso significa exatamente? Deixe-me explicar.
Abrir um artigo Rollup com um tópico como "O que é um Rollup" ou "Por que precisamos de um Rollup" é como matar o tio Ben ou atirar na mamãe e no papai em cada iteração dos filmes do Homem-Aranha e do Batman. Se você está lendo este artigo, provavelmente já conhece esses argumentos bem documentados. Além disso, se você está lendo isso, acho que podemos ir além do debate App Chain vs. App Rollup. Então vamos direto ao assunto.
O surgimento de rollups específicos de aplicativos
Universal Rollup é frustrante
O Universal Rollup é como o sistema escolar indiano (acredito que eles também tenham características semelhantes a outros sistemas escolares, mas isso é algo com o qual tenho experiência pessoal).
Atletas, cantores, matemáticos, pensadores, economistas e contadores de histórias precisam passar pelo mesmo processo para obter nota de aprovação. Tecnicamente, o sistema não é “tendencioso” em relação a nenhum grupo específico, mas também não é “justo” com ninguém. Mas ei, fizemos amigos! (Isso será importante mais tarde).
Da mesma forma, para aplicações em rollup universal, o gargalo é o próprio ambiente, uma vez que não consegue atender as necessidades de cada aplicação individualmente. Cada aplicação pode exigir um tipo diferente de otimização, mas não seria razoável esperar algo feito sob medida para elas. No entanto, se você quiser apenas experimentar e ter uma visão geral, esta é a opção mais conveniente. Além disso, para algumas aplicações, como alguns alunos comuns, esta pode ser a solução certa!
E os amigos? É um ecossistema de aplicativos criados junto com seus aplicativos. Se você é empresário, pode simplesmente ligar para seu amigo contador e pedir-lhe que o ajude a esconder seus impostos do governo :)
Rollup específico do aplicativo é confuso
Bem, minha filha é atlética demais para a escola pública e precisa de treinamento especial. Preciso mandá-la para uma escola de esportes ou devo contratar um personal trainer….
##Complexidade específica
Vamos jogar um jogo.
Abaixo está uma lista de 8 rollups específicos de aplicativos. Porém, dentro de cada grupo existe um item que não pertence a esse grupo. Você consegue identificar qual é?
A especificidade da aplicação está se tornando um termo confuso. Existem rollups específicos de aplicativos que permitem a implantação de contratos sobre si mesmos, e há rollups específicos de aplicativos que permitem a implantação de contratos porque sua máquina virtual (VM) oferece suporte, mas seu proprietário os restringe. Existem também rollups específicos de aplicativos que possuem uma VM fechada ou nenhuma VM e não oferecem suporte a outros tipos de desenvolvimento.
É justo agrupá-los na mesma categoria?
A resposta para a pergunta anterior ~
Grupo 1: Celo é uma escolha estranha porque permite que outros desenvolvedores criem aplicativos, enquanto outros podem usar os aplicativos diretamente. Outros projetos que podem ser considerados no Grupo 1 são Fuel-v1, Aevo, RhinoFi, etc.
Grupo 2: Loopring é o único, pois é o único Rollup desenvolvido especificamente que funciona imediatamente, enquanto os outros são redes otimizadas para recursos específicos como privacidade, NFTs e TPS para aplicativos implantados neles. essas funções. Outros projetos que podem ser incluídos no segundo grupo, Kinto, Kroma, rede de bens públicos, etc.
Problemas com a implantação de contratos em máquinas virtuais gerais modificadas
Essas máquinas virtuais que implantam contratos inteligentes nada mais são do que máquinas de estado completas de Turing. Os contratos que você implanta sobre eles são apenas modificações adicionais ao próprio estado. Na verdade, isso não afeta as regras básicas de transição de estado da máquina virtual. Um rollup é essencialmente uma VM na qual reside sua lógica de negócios.
Sua lógica de negócios é separada da funcionalidade de transição de estado do rollup.
Também chamo isso de “paradigma de contrato inteligente para construção de aplicativos” porque você implanta alguma lógica extra na VM. O rollup não se preocupa "diretamente" em provar a lógica do aplicativo. A VM é o rollup, não o seu aplicativo.
É claro que você é o único proprietário da máquina virtual, seus aplicativos são os únicos cidadãos e você pode aprimorar continuamente a própria base para torná-la adequada aos seus aplicativos. Você pode continuar aprimorando a Função de Transição de Estado (STF) e adicionar/remover códigos de operação para melhorar o desempenho do aplicativo, mas o aplicativo permanece independente e limitado pela própria VM.
É como um Lamborghini Urus puxando um Lamborghini Huracan.
Um aplicativo separado no Rollup específico do aplicativo pode fazer melhor! muito melhor!
E se o STF for continuamente aprimorado para que o escopo do STF se torne cada vez menor para se adequar à lógica de negócios da aplicação? Eventualmente, à medida que você continuar a aprimorá-lo, o STF convergirá para o ponto em que a lógica empresarial e o STF se sobrepõem, e nesse ponto você perceberá... ah, merda, espere um minuto!
Portanto, o Micro-Rollup nada mais é do que um rollup, onde a função de transição de estado da aplicação é a própria lógica de negócio.
O aplicativo se torna um rollup, o estado pode ser gerenciado de qualquer maneira possível em qualquer ambiente de execução e as regras de transição de estado podem ser aplicadas diretamente ao tempo de execução do aplicativo. O aplicativo pode ser personalizado sem quaisquer restrições. Essas provas estão relacionadas à sua lógica de negócios, não à máquina. Isso torna seu aplicativo leve.
Essas funções especiais de transição de estado requerem outro artigo, portanto fique atento :)
Em termos de experiência do desenvolvedor, o Micro-Rollup é ilimitado. Você pode construí-los usando qualquer ferramenta que desejar, porque eles são independentes de VM. Eles se parecem com aplicativos de backend web2, mas enviam periodicamente provas de transações para o pai L1. Acho que este será o principal fator que influenciará os desenvolvedores web2 a migrar para o espaço web3.
Na verdade, um exemplo melhor é o Rimac Nevera, pois é mais rápido e elétrico, provavelmente mais barato de operar, mas não consegui encontrar uma foto de estrada mais sexy
A única desvantagem desta abordagem é personalizar o mecanismo de prova para cada aplicação diferente. Se a lógica do aplicativo pudesse ser compilada em um intermediário comum, provar esse intermediário comum eliminaria a dor de provar cada aplicativo individualmente, mas pessoalmente acho que isso é apenas uma compensação entre eficiência e desenvolvimento mais rápido. Queremos melhorar toda a eficiência possível.
Existem maneiras de contornar isso sem usar métodos que envolvam a VM na camada de execução. E se existisse uma ferramenta que permitisse aos desenvolvedores fazer isso?
Esta é a declaração de missão do Stackr Labs - estamos construindo uma estrutura de micro-rollup e um SDK para que qualquer pessoa possa construir seus aplicativos em qualquer linguagem sem restrições, assim como você cria aplicativos de backend web3. Tornar o desenvolvimento de micro-rollup tão fácil quanto escrever e implantar contratos inteligentes, sem mencionar que a modularidade aumenta o poder de qualquer escolha dos desenvolvedores de ecossistema.
Então o micro-rollup é real?
Sempre. (Mas tão verdadeiro quanto o rollup, desculpe, não quero deixar Jon triste)
Aplicativos como Loopring, dYdX e Fuel-v1 existem ou já existem há muito tempo. Esses são rollups superotimizados, com lógica personalizada executada especificamente para atender ao seu caso de uso. O primeiro rollup específico de aplicativo não baseado em VM que conheço e do qual participei pessoalmente foi o Hubble Optimistic rollup, um projeto de 3 anos que serviu como infraestrutura central para o token Worldcoin. (Esta também é a principal fonte de inspiração do Stackr)
Só agora se torna importante diferenciar esses termos.
Você pode criar Micro-Rollups ilimitados:
Produtos de consumo, como jogos, bolsas, mercados NFT, etc.;
2.app-chain pode ser convertido em app-rollup;
Você pode até criar novos tipos de máquinas virtuais que ofereçam suporte a casos de uso exclusivos, abrindo a porta para a inovação em máquinas virtuais.
Escreverei outro artigo discutindo os prós e os contras do Micro-Rollup e quais aplicativos faz sentido construir usando a estrutura Micro-Rollup.
para concluir
O elemento que falta na árvore que mostrei anteriormente é a máquina de estado personalizada.
Além disso, a implantação de um único protocolo usando rollup baseado em VM ou EVM não é eficiente para aplicativos autônomos. É adequado para aplicativos que já possuem vários contratos inteligentes e protocolos em execução na cadeia EVM, mas não para “aplicativos que querem mais” e desejam se livrar das limitações da VM.
Se podarmos a árvore, a árvore final ficará assim. É por isso que acho que app-rollup, micro-rollup ou rollup serão chamados de Apps em um futuro próximo.
Portanto, Micro Rollups = Aplicativos em rollups Aplicativos como Rollups
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
Micro-Rollup: Uma onda ou um termo de marketing descarado?
Autor: KAUTUK; Fonte: Substack; Compilador: Kate, Marsbit
Um dos meus tweets se tornou viral recentemente e ganhou muita atenção na comunidade online Web3! Esta é uma postagem muito breve no "Twitter" em quatro partes, mas ouço você perguntar: o que isso significa exatamente? Deixe-me explicar.
! [Rollup] (https://img-cdn.gateio.im/webp-social/moments-40baef27dd-e0d4e4d874-dd1a6f-6d2ef1.webp)
Foda-se o Rollup, ignore os clichês
Abrir um artigo Rollup com um tópico como "O que é um Rollup" ou "Por que precisamos de um Rollup" é como matar o tio Ben ou atirar na mamãe e no papai em cada iteração dos filmes do Homem-Aranha e do Batman. Se você está lendo este artigo, provavelmente já conhece esses argumentos bem documentados. Além disso, se você está lendo isso, acho que podemos ir além do debate App Chain vs. App Rollup. Então vamos direto ao assunto.
O surgimento de rollups específicos de aplicativos
Universal Rollup é frustrante
O Universal Rollup é como o sistema escolar indiano (acredito que eles também tenham características semelhantes a outros sistemas escolares, mas isso é algo com o qual tenho experiência pessoal).
! [Rollup] (https://img-cdn.gateio.im/webp-social/moments-40baef27dd-d166a6f7a4-dd1a6f-6d2ef1.webp)
Atletas, cantores, matemáticos, pensadores, economistas e contadores de histórias precisam passar pelo mesmo processo para obter nota de aprovação. Tecnicamente, o sistema não é “tendencioso” em relação a nenhum grupo específico, mas também não é “justo” com ninguém. Mas ei, fizemos amigos! (Isso será importante mais tarde).
Da mesma forma, para aplicações em rollup universal, o gargalo é o próprio ambiente, uma vez que não consegue atender as necessidades de cada aplicação individualmente. Cada aplicação pode exigir um tipo diferente de otimização, mas não seria razoável esperar algo feito sob medida para elas. No entanto, se você quiser apenas experimentar e ter uma visão geral, esta é a opção mais conveniente. Além disso, para algumas aplicações, como alguns alunos comuns, esta pode ser a solução certa!
E os amigos? É um ecossistema de aplicativos criados junto com seus aplicativos. Se você é empresário, pode simplesmente ligar para seu amigo contador e pedir-lhe que o ajude a esconder seus impostos do governo :)
Rollup específico do aplicativo é confuso
Bem, minha filha é atlética demais para a escola pública e precisa de treinamento especial. Preciso mandá-la para uma escola de esportes ou devo contratar um personal trainer….
##Complexidade específica
Vamos jogar um jogo.
Abaixo está uma lista de 8 rollups específicos de aplicativos. Porém, dentro de cada grupo existe um item que não pertence a esse grupo. Você consegue identificar qual é?
! [Rollup] (https://img-cdn.gateio.im/webp-social/moments-40baef27dd-1c153358cc-dd1a6f-6d2ef1.webp)
A especificidade da aplicação está se tornando um termo confuso. Existem rollups específicos de aplicativos que permitem a implantação de contratos sobre si mesmos, e há rollups específicos de aplicativos que permitem a implantação de contratos porque sua máquina virtual (VM) oferece suporte, mas seu proprietário os restringe. Existem também rollups específicos de aplicativos que possuem uma VM fechada ou nenhuma VM e não oferecem suporte a outros tipos de desenvolvimento.
É justo agrupá-los na mesma categoria?
A resposta para a pergunta anterior ~
Grupo 1: Celo é uma escolha estranha porque permite que outros desenvolvedores criem aplicativos, enquanto outros podem usar os aplicativos diretamente. Outros projetos que podem ser considerados no Grupo 1 são Fuel-v1, Aevo, RhinoFi, etc.
Grupo 2: Loopring é o único, pois é o único Rollup desenvolvido especificamente que funciona imediatamente, enquanto os outros são redes otimizadas para recursos específicos como privacidade, NFTs e TPS para aplicativos implantados neles. essas funções. Outros projetos que podem ser incluídos no segundo grupo, Kinto, Kroma, rede de bens públicos, etc.
! [Rollup] (https://img-cdn.gateio.im/webp-social/moments-40baef27dd-64c9473ffb-dd1a6f-6d2ef1.webp)
Problemas com a implantação de contratos em máquinas virtuais gerais modificadas
Essas máquinas virtuais que implantam contratos inteligentes nada mais são do que máquinas de estado completas de Turing. Os contratos que você implanta sobre eles são apenas modificações adicionais ao próprio estado. Na verdade, isso não afeta as regras básicas de transição de estado da máquina virtual. Um rollup é essencialmente uma VM na qual reside sua lógica de negócios.
Sua lógica de negócios é separada da funcionalidade de transição de estado do rollup.
Também chamo isso de “paradigma de contrato inteligente para construção de aplicativos” porque você implanta alguma lógica extra na VM. O rollup não se preocupa "diretamente" em provar a lógica do aplicativo. A VM é o rollup, não o seu aplicativo.
É claro que você é o único proprietário da máquina virtual, seus aplicativos são os únicos cidadãos e você pode aprimorar continuamente a própria base para torná-la adequada aos seus aplicativos. Você pode continuar aprimorando a Função de Transição de Estado (STF) e adicionar/remover códigos de operação para melhorar o desempenho do aplicativo, mas o aplicativo permanece independente e limitado pela própria VM.
É como um Lamborghini Urus puxando um Lamborghini Huracan.
! [Rollup] (https://img-cdn.gateio.im/webp-social/moments-40baef27dd-a0a30d1c5f-dd1a6f-6d2ef1.webp)
Um aplicativo separado no Rollup específico do aplicativo pode fazer melhor! muito melhor!
E se o STF for continuamente aprimorado para que o escopo do STF se torne cada vez menor para se adequar à lógica de negócios da aplicação? Eventualmente, à medida que você continuar a aprimorá-lo, o STF convergirá para o ponto em que a lógica empresarial e o STF se sobrepõem, e nesse ponto você perceberá... ah, merda, espere um minuto!
Nascem os micro-rollups!
! [Rollup] (https://img-cdn.gateio.im/webp-social/moments-40baef27dd-e2c2171e24-dd1a6f-6d2ef1.webp)
Portanto, o Micro-Rollup nada mais é do que um rollup, onde a função de transição de estado da aplicação é a própria lógica de negócio.
O aplicativo se torna um rollup, o estado pode ser gerenciado de qualquer maneira possível em qualquer ambiente de execução e as regras de transição de estado podem ser aplicadas diretamente ao tempo de execução do aplicativo. O aplicativo pode ser personalizado sem quaisquer restrições. Essas provas estão relacionadas à sua lógica de negócios, não à máquina. Isso torna seu aplicativo leve.
Essas funções especiais de transição de estado requerem outro artigo, portanto fique atento :)
Em termos de experiência do desenvolvedor, o Micro-Rollup é ilimitado. Você pode construí-los usando qualquer ferramenta que desejar, porque eles são independentes de VM. Eles se parecem com aplicativos de backend web2, mas enviam periodicamente provas de transações para o pai L1. Acho que este será o principal fator que influenciará os desenvolvedores web2 a migrar para o espaço web3.
! [Rollup] (https://img-cdn.gateio.im/webp-social/moments-40baef27dd-9584f36fd3-dd1a6f-6d2ef1.webp)
Na verdade, um exemplo melhor é o Rimac Nevera, pois é mais rápido e elétrico, provavelmente mais barato de operar, mas não consegui encontrar uma foto de estrada mais sexy
A única desvantagem desta abordagem é personalizar o mecanismo de prova para cada aplicação diferente. Se a lógica do aplicativo pudesse ser compilada em um intermediário comum, provar esse intermediário comum eliminaria a dor de provar cada aplicativo individualmente, mas pessoalmente acho que isso é apenas uma compensação entre eficiência e desenvolvimento mais rápido. Queremos melhorar toda a eficiência possível.
Existem maneiras de contornar isso sem usar métodos que envolvam a VM na camada de execução. E se existisse uma ferramenta que permitisse aos desenvolvedores fazer isso?
Esta é a declaração de missão do Stackr Labs - estamos construindo uma estrutura de micro-rollup e um SDK para que qualquer pessoa possa construir seus aplicativos em qualquer linguagem sem restrições, assim como você cria aplicativos de backend web3. Tornar o desenvolvimento de micro-rollup tão fácil quanto escrever e implantar contratos inteligentes, sem mencionar que a modularidade aumenta o poder de qualquer escolha dos desenvolvedores de ecossistema.
Então o micro-rollup é real?
Sempre. (Mas tão verdadeiro quanto o rollup, desculpe, não quero deixar Jon triste)
Aplicativos como Loopring, dYdX e Fuel-v1 existem ou já existem há muito tempo. Esses são rollups superotimizados, com lógica personalizada executada especificamente para atender ao seu caso de uso. O primeiro rollup específico de aplicativo não baseado em VM que conheço e do qual participei pessoalmente foi o Hubble Optimistic rollup, um projeto de 3 anos que serviu como infraestrutura central para o token Worldcoin. (Esta também é a principal fonte de inspiração do Stackr)
Só agora se torna importante diferenciar esses termos.
Você pode criar Micro-Rollups ilimitados:
2.app-chain pode ser convertido em app-rollup;
Escreverei outro artigo discutindo os prós e os contras do Micro-Rollup e quais aplicativos faz sentido construir usando a estrutura Micro-Rollup.
para concluir
O elemento que falta na árvore que mostrei anteriormente é a máquina de estado personalizada.
! [Rollup] (https://img-cdn.gateio.im/webp-social/moments-40baef27dd-278297d769-dd1a6f-6d2ef1.webp)
Além disso, a implantação de um único protocolo usando rollup baseado em VM ou EVM não é eficiente para aplicativos autônomos. É adequado para aplicativos que já possuem vários contratos inteligentes e protocolos em execução na cadeia EVM, mas não para “aplicativos que querem mais” e desejam se livrar das limitações da VM.
! [Rollup] (https://img-cdn.gateio.im/webp-social/moments-40baef27dd-652a2fb51d-dd1a6f-6d2ef1.webp)
Se podarmos a árvore, a árvore final ficará assim. É por isso que acho que app-rollup, micro-rollup ou rollup serão chamados de Apps em um futuro próximo.
! [Rollup] (https://img-cdn.gateio.im/webp-social/moments-40baef27dd-4e533a01c7-dd1a6f-6d2ef1.webp)
Portanto, Micro Rollups = Aplicativos em rollups Aplicativos como Rollups