Citação

Java syncronized.

Não é segredo que trabalhar com várias threads é algo bem complexo e deve ser trabalhado com cautela.

A palavra reservada syncronized é utilizada para garantir que todas as threads trabalhem sincronizadas.

Utilizando o syncronized em métodos, garantimos que o método só é acessado por 1 thread por vez.

Podemos utilizar o syncronized diretamente na assinatura do método ou somente no bloco do método que gostaria de sincronizar.

Em resumo, podemos sincronizar métodos de instância, métodos estáticos e blocos dos métodos.

Acesse o tutorial completo em: Nakatech.

Citação

Python + Mongodb.

O Mongodb é um banco de dados não relacional orientado a documento tipo Json.

Nesse post vamos demonstrar como conectar, inserir, buscar e atualizar dados no Mongodb utilizando Python.

Mongodb é uma ótima solução quando precisamos gravar e recuperar as informações de forma rápida e fácil.

A performance do Mongodb e de outros bancos de dados não relacional é devido a não utilização de joins e utilizar somente 1 chave para buscar as informações.

Uma desvantagem dos bancos de dados não relacionais é que por não utilizar joins, o tamanho em disco pode crescer muito.

Acesse o tutorial completo em: https://nakatech.herokuapp.com/article/pythonMongodb.html.

Citação

Python+mqtt.

O mqtt é um acrônimo de Message Queuing Telemetry Transport, um protocolo de mensagem leve muito utilizado em serviços de mensagens para dispositivos móveis ou iot.

Para conectar no broker mqtt utilizando Python, utilizamos a biblioteca paho-mqtt.

O paho-mqtt é uma biblioteca que facilita a integração entre Python e o protocolo mqtt.

Soluções utilizando filas como mqtt pode ser uma forma de desafogar o sistema, podendo ser acionado conforme vão chegando às mensagens.

Utilizando Python e mqtt pode se resolver vários problemas relacionados com sincronização e fluxo de dados.

Acesse o tutorial completo em: https://nakatech.herokuapp.com/article/pythonMqtt.html.

Citação

Rodando Javascript na JVM.

Já não é segredo para ninguém que a JVM roda muitas outras linguagens além do Java.

Existem várias linguagens além do Java que tem um Port para rodar dentro da JVM como Scala, Python, Clojure, Ruby, PHP, Groovy, Kotlin e o Javascript.

Vamos falar sobre o Javascript, que foi incorporada na JVM a partir da JDK7 com o projeto Nashorn, onde podemos tanto rodar a partir de um terminal ou mixar códigos Java e Javascript.

Nesse contexto você pode incluir códigos Javascript em códigos Java e vice versa.

O benefício disso é que você pode passar códigos legados em Javascript para Java e vice versa.

Outra vantagem de mixar linguagens é se beneficiar de algo que uma linguagem faz melhor e incluir no código.

Acesse o artigo completo em: https://nakatech.herokuapp.com/article/nashorn.html.

Citação

Pynance.

A biblioteca Pynance é uma ferramenta que facilita buscar informações de ações da bolsa americana.

Infelizmente, essa biblioteca somente busca informações da bolsa de valores americana.

Mas como estudo, a biblioteca atende bem as necessidades.

Com a ferramenta podemos buscar as variações das ações durante o período de anos, meses e dias.

Ainda utilizando a ferramenta, podemos gerar gráficos de candle stick para visualização.

Acesse o artigo completo em: https://nakatech.herokuapp.com/article/pynance.html.

Citação

Leitura do Potênciometro com MicroPython.

Nesse Post vamos fazer a leitura de um potênciometro utilizando Micropython embarcado em um ESP8266.

O MicroPython é uma implementação Python para embarcados, basicamente é um Python mais enxuto.

Acesse o tutorial completo em: https://nakalabs.herokuapp.com/articles/micropythonPotenciometro.html.

Citação

Apache RocketMQ.

O RocketMQ é um framework Java para mensageria e plataforma de streaming de baixa latência.

Um framework de mensageria open source que é utilizado desde 2012 pela plataforma do Alibaba.

Com uma configuração simples, capacidades para auditorias e sua baixa latência, o RocketMQ é ideal para instituições financeiras.

O RocketMQ é uma ótima forma de desacoplar algumas funcionalidades da aplicação.

Como o framework já está consolidado desde 2012, existem várias implementações como Python e Nodejs.

Acesse o artigo completo em: https://nakatech.herokuapp.com/article/rocketMQ.html.