Pular para o conteúdo principal

Postagens

Trabalhando com AWS e LocalStack - AWS S3

 Olá pessoal, hoje vamos ver como podemos utilizar os serviços da AWS em ambiente local utilizando o LocalStack. AWS e Localstack AWS Antes de entrarmos em detalhes sobre o localstack , precisamos entender como que funciona os recursos de um cloud provider, no caso a AWS , ela nos fornece uma dezenas de serviços que podemos utilizar dentro de nossos projetos, sendo alguns deles: S3; SQS; SNS; Lambda; RDS. Para utilizarmos esses serviços, precisamos criar uma conta válida e configurar os serviços que nossa aplicação irá utilizar, aqui podemos pensar, se temos uma unica conta, como vamos testar as funcionalidades da aplicação antes de subir para produção ? Existem várias estratégias para testar aplicações que usam algum serviço da cloud, segue algumas delas: Ter contas separadas para Desenvolvimento, Homologação, Produção, etc; Criar VPCs para ambientes Desenvolvimento, Homologação, Produção, etc; Utilizar o AWS Organizations para gerenciar contas e ambientes. Todas essas possibilidades

Como escolher entre JVM 32 ou 64bits ?

Olá Pessoal, hoje iremos falar um pouco sobre JVM, dando um foco nas diferenças sobre JVM de 32 e 64 bits. O que é a JVM ? Para quem é do mundo Java a JVM é um assunto conhecido, mas para quem esta vindo de outras plataformas pode ser um assunto novo e complexo, a JVM é uma máquina virtual responsável pela interpretação do bytecode (código compilado) e execução na máquina nativa. Ao compilar um código Java, teremos como resultado o  bytecode , este irá ser interpretado pela JVM, por esta razão é que o Java é independente de Plataforma, pois a JVM que garante a comunicação com a plataforma de execução. Hoje temos inúmeras linguagens que rodam em cima da JVM, tais como: Kotlin , Groovy , Scala , entre outras, pois o compilador de cada uma dessas linguagens gera no final o bytecode que será interpretado pela JVM. Utilizando a JVM 32 ou 64 bits Os sistemas operacionais são projetados para fazer a integração entre os softwares e o hardware ,  além de serem a interface homem x máquina qu

RabbitMQ - Conceitos e Casos de Uso

Olá pessoal hoje iremos falar sobre mensageria utilizando  RabbitMQ , iremos passar por conceitos e por alguns casos de uso dessa poderosa ferramenta. O que é o RabbitMQ O  RabbitMQ  é um  message broker  muito utilizado quando falamos de mensageria,   é   uma ferramenta construída em  Erlang , possui  drivers  para diferentes tecnologias (Java, C#, Golang, etc), além de contar com um grande número de usuários e empresas que a utilizam. Suas principais características são: Recebimento de mensagens; Resiliência de mensagens; Roteamento de mensagens. Diferença entre Message Broker e Event Stream É muito comum vermos discussões sobre Eventos x Mensagem, ou Apache Kafka vs RabbitMQ, mas será que as ferramentas são concorrentes ? Como podemos chegar a uma conclusão ? Características do RabbitMQ : Possui lógicas para roteamento de mensagens; As mensagens não possuem retenção após o consumo; Mensagens são consumidas apenas uma vez, por Queue; Muito utilizado em regras de negocio que envolvam

Construindo uma Aplicação Completa com Kotlin, Spring Boot, Docker e Azure

 Hoje iremos construir uma aplicação completa utilizando Kotlin, Spring, Docker e com deploy no Azure, esta aplicação será responsável por realizar o cálculo do IMC. Os Requisitos A aplicação deve realizar o cálculo do IMC (Índice de Massa Corporal), portanto teremos uma Api que receberá os seguintes parâmetros: Altura (Double); Peso (Double). O retorno será um JSON contendo uma mensagem sobre em qual faixa a pessoa se encontra. Criação da Aplicação A aplicação será construída utilizando as seguintes tecnologias: Kotlin ; OpenJDK (Versão 11 ou superior); Apache Maven (Opcional, caso não esteja instalado utilize o . mvnw ou invés de mvn ); Spring Boot ; IntelliJ IDEA  (Em caso de utilizar o Eclipse, lembre-se de instalar o plugin para Kotlin.) Estrutura No site do Spring Initializr vamos utilizar o Generate a Project, que é um wizard que já cria o projeto e coloca todas as dependências necessárias. Criando a Aplicação no Spring Initializr. Após o download do projeto, descompacte e

Recursos da Linguagem Kotlin - Null Safety

Olá pessoal continuando o tema Kotlin, hoje iremos ver como funciona o sistema de Null Safety do Kotlin, e entender como funciona este poderoso recurso. Trabalhando com Instâncias Antes de nos aprofundarmos no  null safety,  precisamos entender o porque as principais linguagens de programação sofrem com o famoso null . Quando instanciamos uma classe e criamos um novo objeto na memória, temos acesso a este objeto a partir de uma referência, ou seja, esta referência aponta para um endereço da memória onde se encontra o objeto. Então basicamente, concluímos que o acesso a um objeto é feito a partir de uma referência, e caso esta esteja nula, o famoso NullPointerException acontece. Agora que já temos uma base do problema, vamos entender como o Kotlin trouxe uma forma segura de lidar com isto. Hieraquia de Tipos em Kotlin Para entendermos como o Kotlin lida com NullSafety, antes vamos precisamos entender sobre declaração de variáveis, e sobre a classe Any , que é a super class de todos os