>_ DevTrendspt

Idioma

Início

Linguagens

Seções

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarcados Segurança
Java

Como Funciona o Servidor de Nó Hiero e Como a Rede Hedera Processa Transações

Se você já acompanhou brevemente o mercado de redes descentralizadas, provavelmente já ouviu falar da rede Hedera. Por muito tempo, seu mecanismo permaneceu como código comercial fechado com uma licença específica. A situação mudou quando o projeto passou para o guarda-chuva da Linux Foundation e recebeu o nome open-source Hiero.

O código-fonte do nó de consenso, escrito em Java, está disponível no repositório hiero-consensus-node. Este é o serviço exato que aceita requisições gRPC, executa transações através de consenso DAG e executa contratos inteligentes.

O Que Está Dentro do Monorepositório

O código é dividido em dois módulos filhos principais:

  • platform-sdk/ — o nível inferior da plataforma. Ele gerencia conexões de rede entre nós, o algoritmo de consenso e o armazenamento persistente do estado da rede.
  • hedera-node/ — a camada de aplicação. Contém serviços para contas, tokens, arquivos e execução de código EVM.

A divisão é lógica. A plataforma lida com o trabalho matemático pesado do consenso distribuído, enquanto o módulo de aplicação transforma esse consenso em uma API conveniente para desenvolvedores.

Serviços, Protobuf e Solidity

A comunicação cliente-para-nó é construída sobre o protocolo gRPC. Toda a especificação é definida em schemas Protobuf separados. Através desses protocolos, o nó lida com tarefas principais:

  • Tokenização (HTS). Permite emitir e transferir tokens sem escrever contratos inteligentes.
  • Registro de consenso (HCS). Permite gravar timestamps e mensagens em um ledger distribuído.
  • Contratos inteligentes. Uma máquina virtual EVM é executada dentro do nó, suportando o compilador Solidity com a diretiva pragma solidity <=0.8.9.

O suporte à versão do Solidity está atualmente limitado à versão 0.8.9. Para contratos OpenZeppelin padrão ou lógica de negócio típica, isso é suficiente, embora você não possa acessar os recursos mais recentes da linguagem ainda.

Infraestrutura e Qualidade do Código

O repositório revela imediatamente suas origens corporativas. Não há nenhuma das desordens típicas de pequenas utilities open-source. Os pipelines de CI/CD incluem testes de performance diários (Single Day Performance Tests) e testes de resistência de longa duração (Longevity Tests).

O projeto é certificado sob os padrões OpenSSF Scorecard e CII Best Practices, e a cobertura de testes é rastreada através do Codecov.

Por outro lado, a seção de issues tem mais de mil e quinhentas tarefas abertas. Isso é normal para sistemas grandes que migraram para open source, mas novos desenvolvedores precisarão gastar tempo entendendo como o projeto é estruturado.

Por Onde Começar a Aprender

O projeto é construído com Gradle. Para rodar localmente, você precisará de uma versão recente do Java e RAM suficiente.

Se você quer mergulhar nos detalhes da arquitetura, é útil consultar a documentação:

  • A pasta hedera-node/docs/design/ contém diagramas arquiteturais e decisões de design de serviços.
  • A documentação em platform-sdk/docs/ descreve a estrutura interna da plataforma de consenso em si.

Para Quem Este Projeto Será Útil

Para um desenvolvedor Web3 típico que só precisa emitir um token ou fazer deploy de uma dApp, rodar seu próprio nó não é necessário. É muito mais simples usar SDKs prontos para sua linguagem de programação preferida.

Este repositório é principalmente interessante para equipes de engenharia. Aqueles que projetam suas próprias redes empresariais baseadas em tecnologia Hashgraph, pesquisam tolerância a falhas BFT assíncronas, ou estudam sistemas Java de alta carga. O código contém bons exemplos de otimização de memória e estruturação de serviços gRPC para alta carga.

Projetos relacionados