Mostrando entradas 1 para 10 de 670
Próximo 10 Entradas mais antigos »
Validando componentes vulneráveis com Maven

Tivemos a Semana da Segurança na Concrete, e para continuar debatendo o tema, hoje vou mostrar como configurar um projeto Maven para validarmos o uso de bibliotecas e frameworks vulneráveis, usando o OWASP Dependency Check.

Um pouco sobre o projeto OWASP Dependency Check

Dependency Check é uma solução open-source que leva em conta o OWASP Top 10 A-9 “Uso de Componentes com Vulnerabilidades Conhecidas”. Atualmente, a solução pode ser usada para escanear aplicações Java e .NET em busca de componentes vulneráveis conhecidos. Em fase experimental, devido às taxas de falsos positivos e falsos negativos, também pode ser usada para aplicações Python, Ruby, PHP (Composer) e Node.js. …

[Leia mais]
Um ambiente simples usando Kubernetes e OpenShift Next Gen – Parte 03

Este artigo é a terceira parte de uma série sobre o básico necessário para usar o Kubernetes; caso você não tenha lido o artigo anterior, recomendo fazê-lo e depois voltar aqui para não ficar perdido.

Como comentei no artigo anterior, existem alguns problemas no ambiente que construí, e o principal deles é que os Pods não totalmente efêmeros, ou seja, se eu adicionar novos dados nele, no momento que o Pod fosse destruído, os dados iriam junto e sem backup!

E agora iremos tratar esse primeiro problema. Caso não tenha mais os fontes até o estado do artigo anterior, ou prefira acompanhar o meu andamento, pode pode pegá-los aqui: …

[Leia mais]
Um ambiente simples usando Kubernetes e OpenShift Next Gen – Parte 02

Este artigo é parte de uma série sobre o básico necessário para usar o Kubernetes. Caso você não tenha lido o primeiro, recomendo lê-lo e depois voltar aqui para não ficar perdido.

Conhecendo os componentes básicos explicados no post anterior, posso preparar a aplicação que mostrei para o Kubernetes.

O primeiro passo é definir quais são os Pods do meu cluster.

Embora o primeiro impulso seja colocar cada um dos contêineres em um Pod distinto e seguir em frente, esse não é necessariamente a melhor forma de defini-los. Por exemplo, em uma situação, certos contêineres têm o mesmo objetivo, ou dependem muito um do outro …

[Leia mais]
Cacheamento de informações com Redis

Finalizei o meu artigo anterior com a promessa de trazer um texto sobre o uso do Redis para fazer o cacheamento de informações do WordPress. É preciso deixar bem claro que estes procedimentos podem ser úteis para diversas configurações do Redis como cacheamento, irei apenas utilizar de exemplo o WordPress, já que ele é um CMS bem popular e acredito que tem muita gente que vai gostar de ter estas dicas para configurar seu WordPress e deixar ele voando!

Para os que ainda estão um pouco perdidos com relação ao que é o Redis, volto a explicar. O Redis é um servidor de estruturas de dados que pode ser usado como um servidor de banco de dados ou utilizado em paralelo com o MySQL para aumentar o seu desempenho.

Nele podemos gravar informações em Strings, Integers, Lists, Sets, Ordered Sets e Hash …

[Leia mais]
Um ambiente simples usando Kubernetes e OpenShift Next Gen – Parte 01

Como parte das minhas metas dentro da Coderockr está a construção de um cluster usando algumas das ferramentas de orquestração de contêineres que existem no mercado; como o Docker Swarm, Kubernetes, Apache Mesos etc.

Optei pelo Kubernetes no momento, tanto pelo pedigree, criado pelo Google e mantido pela Cloud Native Computing Foundation; quanto pela oferta de grandes clouds como a Red Hat, Azure e Google.

Quando estava avaliando as opções disponíveis, o Jean Carlo Machado (colega da CompuFácil), me sugeriu usar o …

[Leia mais]
Como fazer subconsultas: um passo a passo

Apesar da maioria das consultas feitas por quem está começando em SQL ser com SELECT externos, nesse artigo vou apresentar um recurso bastante útil que vai ajudar você a melhorar a legibilidade da sua query assim como, em alguns casos, otimizar o tempo do retorno das suas informações para o usuário. As chamadas subconsultas.

Uma subconsulta nada mais é do que uma instrução SELECT dentro de outro SELECT que retorna algumas colunas específicas que são usadas em algumas funções como INSERT e UPDATE por exemplo.

1. Tipos de subconsultas

Segue abaixo os tipos de subconsultas:

  • Subconsultas de uma única linha: retornam zero ou uma linha para a instrução SQL externa;
  • Subconsultas de várias linhas: retornam uma ou mais linhas para a SQL externa;
  • Subconsultas de várias colunas: retornam mais de uma coluna …
[Leia mais]
Pacote PHP notável: PHP Elastic Search para MySQL

O MySQL tem um bom mecanismo de pesquisa de texto completo, mas quando você tenta usar pesquisas de texto completo e, ao mesmo tempo, tem o aplicativo atualizando o banco de dados, isto pode ser muito lento porque atualizar os índices deixa mais lento o resto dos acessos de banco de dados.

Muitas vezes, é mais rápido indexar os dados a serem pesquisados com um banco de dados separado.

A Elastic search é um mecanismo independente para indexação e pesquisa de dados usando uma API REST.

Esta classe pode indexar e pesquisar registros MySQL usando o Elastic Search. Desta forma, você pode fornecer uma pesquisa de texto completo em dados em um banco de dados MySQL sem sobrecarregar o servidor MySQL principal.

O pacote PHP Elastic Search para MySQL é um dos poucos pacotes do PHP que …

[Leia mais]
Como trabalhar com Secrets no Docker 1.13.x

Em 18 de janeiro foi lançada a versão 1.13 do Docker com um monte de funcionalidades novas e matadoras. Uma das que eu mais gostei foi a possibilidade de gerenciar secrets no Swarm Mode e é sobre ela que vou discorrer nesse artigo.

O que é o secret?

Quando estamos trabalhando em um projeto e precisamos passar informações sensíveis para o ambiente, tais como senhas, chaves privadas, tokens, chaves de APIs e afins sempre passamos pelo problema de não podermos deixar no controle de versão e devemos sempre utilizar uma maneira segura de trafegar esses segredos.

Muitas vezes, acabamos trabalhando com variáveis de ambiente para guardar essas informações, o que não é recomendado por alguns motivos.

Diogo Monica, que é um dos engenheiros de software da Docker, mencionou em um …

[Leia mais]
Importando dados rapidamente no MySQL.md

Há um tempo, meu amigo Frank de Jonge me contou que conseguiu aumentar a performance em uma importação de 10h para 16 minutos. De acordo com ele, as alterações envolviam campos que eram muito longos que armazenavam pequenas strings, o número de índices e de chaves estrangeiras nas tabelas. Estamos falando de pelo menos 1 milhão de registros aqui, e ele estava se perguntando se era possível ter uma importação ainda mais rápida.

O básico

Existem várias maneiras de se importar informações para um banco de dados. Tudo depende da origem e o destino. Um pouco mais de contexto para melhor entendimento: você poderia retirar dados de uma aplicação legada que exporta dados em CSV para seu servidor de banco de dados ou até mesmo dados de …

[Leia mais]
Timings do Server-side no Chrome Devtools

Paul Irish falou recentemente no seu Twitter sobre um recurso muito legal no Chrome Devtools! A guia timings pode interpretar cabeçalhos HTTP enviados pelo aplicativo e processá-los.

View your server’s metrics in @ChromeDevTools via Server Timing headers. Big thanks to longtime Firebug developer @sroussey for the patch! pic.twitter.com/OjDDIv0lLR

— Paul Irish (@paul_irish) 7 de fevereiro de 2017

É parecido com isso no Network Inspector do Chrome:

Para testar, clique com o botão direito do mouse nesta página, vá para …

[Leia mais]
Mostrando entradas 1 para 10 de 670
Próximo 10 Entradas mais antigos »