O load balancer é responsável por distribuir toda a carga de sua aplicação. Mas como seria possível distribuir a carga entre vários load balancers? Baseada em DNS Round Robin DNS KeepaliveD Layer 4 load balancing https://keepalived.readthedocs.io/en/latest/introduction.html NAT Load Balancing … Opções para GCP (Google Cloud Provider) … Opções para AWS (Amazon Web Services) … Referências Resposta no Quorahttps://www.quora.com/How-do-you-load-balance-between-load-balancers
Spring Cloud Gateway + Eureka – Fazendo seus backends terem IPs dinâmicos e ainda assim serem encontrados
O Eureka tem o papel de fazer “Service Discovery”. Referências Documentação Oficial do Spring – Eureka Serverhttps://cloud.spring.io/spring-cloud-netflix/multi/multi_spring-cloud-eureka-server.html Tutorialspoint – Eureka Serverhttps://www.tutorialspoint.com/spring_boot/spring_boot_eureka_server.htm#:~:text=Eureka%20Server%20is%20an%20application,also%20known%20as%20Discovery%20Server. Padrão de projetos microserviços – Server-side service discoveryhttps://microservices.io/patterns/server-side-discovery.html Tutorial Spring Cloud Gateway + Eurekahttps://progen.medium.com/load-balancing-spring-cloud-applications-using-eureka-and-spring-cloud-gateway-43d0bcf57cc3
Bibliotecas de Servidores HTTP leves para Java e Kotlin
Palavras chave relacionadas: bibliotecas, micro frameworks, frameworks, RestFULL, Rest, APIs, backend Frameworks para desenvolvimento de sistemas Web em Java e Kotlin como Spring, Spring Boot, Apache Struts, Seam trazem alguns contras se forem escolhidos como base para desenvolvimento de seu software como: Requer o download e uso de diversas bibliotecas dependentes, o que acaba deixando o software pesado Requer compreensão de padrões de projetos, convenções, Inversão de Controle, Injeção de Dependência, MVC, etc… Requer uso de annotations e um estudo Continuação…
Network File System (NFS)
O que é o Network File System? É uma forma de usar um disco de armazenamento (HDD, SSD, etc) de uma máquina remota em sua máquina local, como se fosse um disco local. Costumam compará-lo muito com o SMB (protocolo de compartilhamento de pastas e arquivos da Microsoft). Em que e contra quem o NFS é melhor? O NFS é superior ao SMB por ser um protocolo mais simples e permitir uma taxa mais rápida de leitura e escrita, principalmente Continuação…
Kerberos – Armazenamento de credenciais
O Kerberos é usado para armazenar credenciais (logins e senhas) de forma centralizada. Ele criou as bases para o que hoje conhecemos como protocolo LDAP e por consequência o Active Directory da Microsoft. Quais os usos do Kerberos? Armazenar login e senha de usuários Linux (pam-krb5) Armazenar login e senha de banco de dados (PostgreSQL, Oracle, Microsoft SQL Server) Como o Kerberos funciona? Explicação do funcionamento do Kerberos através de uma conversahttp://web.mit.edu/Kerberos/dialogue.html Usando Kerberos no Ubuntu Tutorial Ubuntu Serverhttps://ubuntu.com/server/docs/service-kerberos Tutorial Continuação…
Como e-mails funcionam e como configurar um?
Artigo em construção… Softwares que compõem um e-mail: Referênciashttps://en.wikipedia.org/wiki/List_of_mail_server_software Configurando o DNS para seu e-mail funcionar Várias hospedagens baratas de PHP tipo Locaweb, Hostgator, Hostinger, Godaddy contam com serviço de e-mail integrado. O conhecimento que escrevo neste tópico é sobre o funcionamento do DNS para o caso destas hospedagens, em especial Hostgator. Ao longo das explicações uso o termos: “seu domínio” e ele significa o domínio que sua empresa registrou, tipo “minha-empresa.com.br”. “seu e-mail” e ele significa seu endereço de Continuação…
Realizando Testes em Design Documents no CouchDB
Design Documents do tipo Update Functions no CouchDB servem para aplicar regras, validações e modificações antes que um documento seja inserido, modificado ou excluído, é uma forma de inserir lógicas (triggers) dentro do próprio banco de dados. Como isso consiste basicamente em um código Javascript sendo executado dentro do banco de dados, é importante que estes sejam testados contra possíveis bugs e falhas. O motor Javascript utilizado pelo CouchDB é o SpiderMonkey 91 ESR na implementação do ECMAScript 6 (ES6 Continuação…
Web Application Firewall
O que é um Web Application Firewall? Parece ser um Firewall de camada 7, que inspeciona conteúdos de pacotes HTTP e HTTPS em busca de ataques XSS (Cross Site Scripting), SQL Injections, ataques DOS, DDOS, etc. Ele pode ser considerado uma espécie de Proxy Reverso HTTP. Não chega a ser um API Gateway porque não realiza roteamento. Se você aplica boas práticas de desenvolvimento no seu software, com análise de código automatizada e testes, talvez não seja necessário usar um Continuação…
Instalando Node RED como serviço em um Windows
Para criar um programa em Node RED que inicie, automaticamente, toda vez que o computador é ligado e reinicie em caso de erros, é preciso transformar ele em um serviço. Para criar um serviço no Windows precisaremos do grandioso nssm (Non Sucking Service Manager) e de um terminal (cmd, prompt de comando) com acesso nível Administrador. É muito interessante que você instale o Node RED de forma local (sem usar a instalação global). Eu ensino isso aqui nesse artigo: Como Continuação…
Como implementar MFA (Multi Factor Authentication) usando TOTP (Time-based One Time Password)?
Algumas bibliotecas para criar TOTPs e HOTPs OTPLIB OTPLib:https://github.com/yeojz/otplib E aqui um exemplo, ao vivo, de geração e validação de TOTP:https://otplib.yeojz.dev/ Simple TOTP GitHubhttps://github.com/lesha-co/simple-totp Speakeasy Speakeasy:https://github.com/speakeasyjs/speakeasy mOTP O mOTP é um protocolo alternativo ao usado pelo Google Authenticator. Sourceforgehttp://motp.sourceforge.net/ Biblioteca multiOTP https://github.com/multiOTP/multiotp