Aprenda mais sobre GeneXus
4 Min.

Amazon Web Services e GeneXus: A chave para a construção de sistemas de missão crítica

Como produtores de software, não apenas somos responsáveis pelo desenvolvimento de sistemas de missão crítica que beneficiem nosso negócio, mas os sistemas que construímos devem ser confiáveis, escalonáveis, observáveis, ter bom desempenho e custo-benefício.

A construção de sistemas escaláveis e confiáveis está se tornando mais complexa a cada dia. No GeneXus 17 queremos facilitar a implementação desses tipos de sistemas para que o desenvolvedor possa se concentrar no que é realmente importante, trazendo valor para o negócio. 

Além disso, os sistemas são construídos na nuvem, portanto é essencial pensar sobre a arquitetura e a implantação do meu sistema de acordo com os Serviços de Nuvem que irão potencializar minha aplicação.

Quando pensamos em um sistema complexo no AWS Cloud, pensamos em: 

1. Banco de Dados

O banco de dados é o componente mais importante de uma aplicação. A Amazon tem o Amazon RDS, um serviço gerenciado para bancos de dados relacionais.

Aqueles que trabalham com GeneXus podem se conectar a qualquer motor suportado por AWS RDS, incluindo SQL Server, MYSQL, Oracle, Amazon Aurora, PostgreSQL para citar alguns.

Em cenários mais complexos, onde a escala de escrita e leitura também é necessária, existem outros sistemas de armazenamento de dados, como o NOSQL.

No GeneXus 17 estamos introduzindo a possibilidade de escrever e ler a partir da AWS DynamoDB. AWS DynamoDB nos dará a possibilidade de dimensionar os dados de leitura e escrita de uma forma quase infinita, sem ter que se preocupar com a manutenção do hardware associado e pagar exatamente o que é usado, nem mais nem menos.

2. Sistema de arquivo

Hoje em dia não há mais discussão de que o Amazon S3 é a melhor maneira de servir e armazenar arquivos na nuvem.

No GeneXus 17 temos suporte automático para armazenamento de imagens, áudios e vídeos nativos no Amazon S3.

Estes recursos podem ser armazenados pública ou privadamente para acesso a partir da nuvem.

3. Performance

Para aumentar o desempenho de uma aplicação, o cache de dados é uma ferramenta amplamente utilizada.

No GeneXus 17 existem mecanismos para ativar o cache do banco de dados que nos permite aliviar a carga e as solicitações que fazemos para o banco de dados. Esta característica é simplesmente ativada com uma propriedade.

Há também uma API que nos permite invalidar ou usar o cache de uma forma mais manual.

Se eu estiver na nuvem AWS, ela apoia os fornecedores da Amazon Elastic Cache, como Redis e Memcached, de forma integrada.

4. Estado

Na Nuvem, os sistemas funcionam de forma distribuída. Em um ambiente distribuído, tal sistema funciona em muitas máquinas, de modo que manter o estado de contexto de cada usuário se torna uma tarefa importante.

GeneXus é capaz de armazenar o estado do contexto dos usuários de forma distribuída, em sistemas de cache, tais como Redis e Memcached. Isto permite executar aplicações distribuídas sem problemas.

5. Logging

GeneXus é compatível com AWS Cloudwatch através de sua API de Logging.

6. Implantação

Como podemos implantar um sistema construído em GeneXus na AWS?

É possível utilizar qualquer uma das seguintes opções:

  • IAAS

EC2

  • PaaS

AWS Elastic Beanstalk

  • Containers

ECS

Kubernetes

GeneXus permite então que os aplicativos desenvolvidos sejam totalmente implantados na nuvem gerenciada pelos usuários ou clientes.

7. Serverless Computing

O Serverless é a última tendência em relação às implantações de sistemas.

Esse modelo de implantação e arquitetura torna possível a implantação de sistemas que escalam infinitamente sobre a infraestrutura AWS. Isto evita que o mantenedor do sistema se preocupe com a manutenção, operação e planejamento do servidor.

Sistemas desenvolvidos com GeneXus 17 podem ser implantados em um modelo Serverless, usando o AWS API Gateway e os serviços AWS Lambda.

Desta forma, tanto os Objetos API quanto as Aplicações orientadas a serviços (Android, iOS e Angular) podem ser implantados desta forma.

O resultado final é sistemas extremamente escaláveis, sem manutenção, onde pago exatamente pelo que uso, nem mais nem menos.

Se acrescentarmos a este poder computacional um banco de dados escalável, como o AWS DynamoDB, teremos um sistema totalmente escalável na nuvem, desde o banco de dados até o poder de processamento.

O futuro da nuvem em GeneXus

No GeneXus 17, estamos introduzindo novas formas de implantação de nossas aplicações, que complementarão os modelos existentes para que possamos resolver casos de uso mais sofisticados utilizando uma arquitetura mais moderna na Nuvem.

As aplicações Serverless e Containerized serão o novo padrão nos próximos anos e devemos estar prontos.

Você também pode estar interessado em ler:

Android: 15 novidades que os desenvolvedores precisam saber

Descubra por que a escalabilidade é importante para garantir o crescimento bem sucedido de seu negócio

37 palestras sobre tecnologia e design

IT Security: a key issue in Mission Critical systems

Pós-pandemia e software Low-Code, o que há para saber?

Leave a Reply

Your email address will not be published.

Voltar ao início