Páginas

quinta-feira, 30 de janeiro de 2025

 


                              Amazon Managed Blockchain



O Amazon Managed Blockchain é um serviço totalmente gerenciado que facilita ingressar em redes públicas e criar e gerenciar redes de blockchain privadas usando as conhecidas estruturas de código aberto Hyperledger Fabric e Ethereum.

Esse viabiliza a criação de aplicativos nos quais várias partes podem realizar transações, sem a necessidade de uma autoridade central confiável. Atualmente, a criação de uma rede de blockchain escalável com as tecnologias existentes é uma tarefa de configuração complexa e difícil de gerenciar. Para criar uma rede de blockchain, cada membro da rede deve provisionar manualmente hardware, instalar software, criar e gerenciar certificados para controle de acesso, além de configurar componentes de rede. Quando a rede estiver em execução, será necessário monitorar continuamente a infraestrutura e adaptar-se às alterações, como o aumento das solicitações de transação ou os novos membros que ingressam ou saem da rede.

O Amazon Managed Blockchain é um serviço totalmente gerenciado que permite que você entre em redes públicas ou configure e gerencie redes privadas escaláveis com apenas alguns cliques. O serviço elimina a sobrecarga necessária para criar a rede ou ingressar em uma rede pública e escala automaticamente para atender às demandas de milhares de aplicações que executam milhões de transações. Depois que a rede estiver ativa e em funcionamento, ele facilita o gerenciamento e a manutenção da rede de blockchain. Ele gerencia seus certificados e permite que você convide novos membros facilmente para ingressar na rede.


Benefícios do Managed Blockchain


Totalmente gerenciado

Com o Amazon Managed Blockchain, você pode criar rapidamente redes de blockchain que abrangem várias contas da AWS, permitindo a um grupo de membros executar transações e compartilhar dados, sem a necessidade de uma autoridade central. Diferentemente da hospedagem própria da infraestrutura de blockchain, o Amazon Managed Blockchain elimina a necessidade de provisionar manualmente um hardware, instalar um software ou configurar componentes de rede e segurança. Com a API de votação do Managed Blockchain, os participantes da rede podem votar para adicionar ou remover membros. Quando um novo membro é adicionado, o Managed Blockchain permite a ele executar e configurar vários nós pares de blockchain para processar solicitações de transação e armazenar uma cópia do livro contábil. O Managed Blockchain também monitora a rede e substitui automaticamente os nós que apresentam mau desempenho.


Opções do Hyperledger Fabric ou do Ethereum

O Amazon Managed Blockchain tem suporte para duas estruturas de blockchain conhecidas: o Hyperledger Fabric e o Ethereum. O Hyperledger Fabric é adequado para aplicativos que exigem rigorosos controles de privacidade e permissão a um conjunto conhecido de membros, por exemplo, um aplicativo financeiro em que determinados dados comerciais são compartilhados apenas com bancos selecionados. O Ethereum é adequado para redes de blockchain altamente distribuídas, em que a transparência dos dados é importante para todos os membros. Por exemplo, uma rede de blockchain de fidelização de clientes, que permite a qualquer varejista da rede verificar a atividade de um usuário de forma independente junto a todos os membros a fim de resgatar benefícios. De forma alternativa, também é possível usar o Ethereum para ingressar em uma rede de blockchain pública do Ethereum.

Escalável e seguro

O Amazon Managed Blockchain pode escalar facilmente a rede de blockchain à medida que o uso de aplicativos na rede aumenta com o tempo. Quando um membro da rede requer capacidade adicional para criar e validar transações, ele pode adicionar rapidamente um novo nó emparelhado usando as APIs do Managed Blockchain. O Managed Blockchain fornece uma seleção de tipos de instâncias que consistem em várias combinações de CPU e memória para que você tenha a flexibilidade de escolher a composição adequada de recursos para a sua workload. Além disso, o Managed Blockchain protege os certificados da rede com o tecnologia do AWS Key Management Service (KMS), eliminando a necessidade de configurar seu próprio armazenamento seguro de chaves.

Confiabilidade

O Amazon Managed Blockchain reforça a confiabilidade do “serviço de pedidos”, um componente na framework do Hyperledger Fabric que garante o fornecimento de transações em toda a rede de blockchain. O serviço de pedidos padrão do Hyperledger Fabric não armazena um histórico completo de transações, o que dificulta o acompanhamento e a recuperação do histórico, quando necessário. O serviço de pedidos do Managed Blockchain foi desenvolvido com a tecnologia do Amazon QLDB e conta com um log de alterações imutável que mantém o histórico completo preciso de todas as transações na rede de blockchain, garantindo que você possa salvar os dados de forma permanente.

terça-feira, 21 de janeiro de 2025

 

Características do CDK (Cloud Development Kit) e SDK (Software Development Kit)







Estudo detalhado AWS CDK VS AWS SDK, ou seja, AWS Cloud Development Kit / AWS Software Development KIT - comparação completa, curva de aprendizado, suporte a linguagem de programação, vantagens, adequação

CDK (kit de desenvolvimento em nuvem):

Visão geral: O CDK é uma abordagem moderna para definir a infraestrutura em nuvem usando linguagens de programação familiares como TypeScript, Python, Java e muito mais. Ele permite que os desenvolvedores definam a infraestrutura como código usando construções de programação orientada a objetos.

Vantagens:

Abstração: o CDK fornece uma abstração de alto nível sobre os recursos da nuvem, facilitando a definição de infraestruturas complexas usando código que se assemelha muito ao modo como são projetadas manualmente.

Construções reutilizáveis: os desenvolvedores podem criar construções reutilizáveis ​​(como classes) para encapsular e compartilhar padrões de infraestrutura.

Idiomas familiares: os desenvolvedores podem usar idiomas com os quais já estão familiarizados, reduzindo a curva de aprendizado.

Validação em tempo de compilação: O CDK oferece validação em tempo de compilação, detectando erros antes da implantação.

Atualizações automáticas: o CDK lida com atualizações de recursos gerando e aplicando alterações sem intervenção manual.

Desvantagens:

Complexidade: a abstração do CDK pode levar a uma curva de aprendizado mais acentuada, especialmente para aqueles que são novos nos conceitos de nuvem.

Aprisionamento de fornecedor: embora o CDK ofereça suporte a vários provedores de nuvem, seu código fica fortemente acoplado à estrutura do CDK, criando potencialmente preocupações de aprisionamento de fornecedor.

Adequação: O CDK é adequado para projetos onde infraestruturas complexas precisam ser definidas e gerenciadas por meio de código e onde os membros da equipe se sentem confortáveis ​​com a linguagem de programação escolhida.


SDK (kit de desenvolvimento de software):

Visão geral: SDKs são bibliotecas e ferramentas fornecidas por provedores de nuvem para interagir com seus serviços de forma programática. Os SDKs oferecem APIs que os desenvolvedores usam para criar, gerenciar e interagir com recursos da nuvem.

Vantagens:

Controle focado: os SDKs oferecem controle granular sobre recursos e ações, permitindo que os desenvolvedores ajustem as configurações.

Maduro: os SDKs estão bem estabelecidos e são usados ​​na indústria há muito tempo.

Opções de linguagem: os SDKs estão disponíveis em várias linguagens de programação, proporcionando flexibilidade aos desenvolvedores.

Menos abstração: os SDKs expõem as APIs de serviço subjacentes, proporcionando uma compreensão mais profunda de como os serviços funcionam.

Desvantagens:

Código padrão: o uso de SDKs pode envolver a escrita de mais código padrão, especialmente para infraestruturas complexas.

Gerenciamento manual: atualizações e alterações na infraestrutura podem exigir ajustes manuais no código.

Adequação: os SDKs são adequados para cenários em que é necessário controle preciso sobre recursos ou ações individuais e onde é preferida uma interação detalhada e de nível inferior com serviços em nuvem.

Preferência, popularidade e facilidade de uso:

Preferência: A escolha entre CDK e SDK geralmente depende da familiaridade do desenvolvedor com linguagens de programação, de sua necessidade de abstração e de sua preferência por controle de alto nível versus controle de baixo nível.

Popularidade: O CDK ganhou popularidade devido à sua abstração e facilidade de uso, mas os SDKs continuam amplamente utilizados por sua flexibilidade e maturidade.

Facilidade de uso: a abstração do CDK e o tratamento automático de atualizações de recursos o tornam mais fácil de usar em determinados cenários, enquanto os SDKs fornecem mais controle, mas podem exigir mais gerenciamento manual.

Curva de aprendizado e facilidade de desenvolvimento:

Curva de aprendizado do CDK: A curva de aprendizado do CDK pode ser mais acentuada devido à sua abstração e conceitos únicos.

Curva de aprendizado do SDK: Os SDKs exigem que os desenvolvedores entendam as APIs específicas de cada serviço, o que também pode ser desafiador, especialmente para iniciantes.


Comparação completa




Conclusão:

A escolha entre CDK e SDK depende de fatores como familiaridade com linguagens de programação, necessidade de abstração, requisitos de controle e nível de conforto com configurações de baixo nível. O CDK é preferido por sua abstração de alto nível e atualizações automáticas, enquanto os SDKs oferecem controle mais granular. Considere os requisitos específicos do projeto e a experiência da sua equipe de desenvolvimento ao tomar sua decisão