Início Artigos
Artigos
Feed RSS-
Atomicidade em transações distribuídas no Apache Kafka
Em alguns cenários, garantias transacionais no processamento de streams são necessárias. Neste artigo apresentaremos uma forma de alcançar atomicidade e garantias transacionais usando recursos do próprio Apache Kafka, além de demonstrar como o uso desses recursos impactam na performance de uma aplicação.
-
Coletando dados do Pieces
O Pieces, uma nova biblioteca JavaScript, resolve os problemas de roteamento e transição de página. Afinal, ambos estão preocupados com o que acontece quando o aplicativo muda de uma página para outra. A ideia é o desenvolvedor criar as páginas individuais e permitir que o Pieces se preocupe com tudo o que está envolvido na transição.
-
Desenvolva aplicações CLI nativas em Java com Graalvm e Picocli
Comparado com outras linguagens, o Java não é tão conveniente para criar aplicações simples com base em linha de comando - em grande parte devido à necessidade de distribuir um executável de tamanho considerável. A combinação do GraalVM e Picocli visa mudar isso, fornecendo compilação nativa juntamente com uma maneira fácil e moderna de lidar com argumentos de linha de comando.
-
Entrevista sobre o livro Refactoring - Segunda edição
O InfoQ entrevistou Fowler sobre as principais mudanças na 2ª edição do Refactoring, como reconhecer problemas e refatoramento do código, como as revisões e refatoração se apoiam mutuamente, o que os líderes de tecnologia podem fazer para incentivar a refatoração, os benefícios e as ferramentas para uma refatoração e para o mob programming.
-
Quebrando os três mitos mais comuns da engenharia de software
Este artigo expõe os mitos mais comuns que frequentemente afligem os engenheiros de software e podem impedi-los de atingir seu potencial, especialmente se já forem ou aspiram ser líderes, e também fornece algumas ideias que podem ser implementadas imediatamente para lhe ajudar a se livrar dessas crenças limitantes.
-
A solução Kongo: Criando uma aplicação IoT escalável com Apache Kafka
O Kafka é um sistema distribuído de processamento de stream que permite que os produtores distribuídos enviem mensagens aos consumidores distribuídos por meio de um cluster Kafka. Simplificando, é uma maneira de entregar mensagens onde se deseja que elas sejam enviadas. O Kafka é particularmente vantajoso porque oferece alto rendimento e baixa latência e poderosa escalabilidade horizontal.
-
Usando RedisTimeSeries e Grafana para análise de dados em tempo real
O gerenciamento de dados temporais é fundamental para qualquer iniciativa focada na análise de dados empresariais. Os preços das ações, telemetria de sensores de máquinas industriais são alguns exemplos. Ao integrar o Grafana e RedisTimeSeries, podemos em tempo real, visualizar padrões e detectar anomalias, visualizar tendências e comparar dados atuais com dados históricos, agregar dados, etc.
-
Como desacelerar para ir mais rápido no desenvolvimento de software
Ir rápido demais pode ser um grande inimigo no desenvolvimento de software. Ao desacelerar as pessoas, melhoramos a maestria técnica. Ao desacelerar processos, melhoramos a adaptação e a eficiência. Ao desacelerarmos produtos, melhoramos automação e qualidade. Quando focamos nessas áreas, cultivamos uma cultura de desenvolvimento promovendo um desenvolvimento mais rápido.
-
Cloud e uma pespectiva arquitetural entre risco e serviços
Atualmente, a arquitetura de software tem diversos desafios sendo o maior deles, a escalabilidade. O conceito de cloud trouxe essa possibilidade com diversos serviços IaaS, PaaS e SaaS. Com tantas opções e serviços, qual é a melhor opção para cada cenário? Esse artigo tem como objetivo falar um pouco das desvantagens na escolha de serviços cloud em nosso software corporativo.
-
Entrevista sobre o livro AI Crash Course
O livro AI Crash Course, de Hadelin de Ponteves, contém um conjunto de quatro modelos diferentes de IA: Thompson Sampling, Q-Learning, Deep Q-Learning e Deep Convolutional Q-learning. Ele ensina a teoria desses modelos de IA e fornece exemplos de codificação para resolver casos da indústria com base nesses modelos.
-
Unidade de medidas em Java, como e o porquê
As unidades de medida são as quantidades de uma determinada grandeza física e que serve de padrão para eventuais comparações. Esses elementos também são utilizados no mundo dos softwares, porém, surgiram várias questões: Qual é a melhor forma de utilizar esses padrões em um software? Quais são os impactos? O objetivo desse artigo é falar um pouco sobre a especificação de unidade de medida no Java.
-
Testando microservices: 6 estudos de caso com uma combinação de técnicas de teste - Parte 3
Este artigo apresenta seis casos de uso de testes reais de aplicações baseadas em microservices e demonstra como uma combinação de técnicas de testes pode ser avaliada, escolhida e implementada.