O documento discute como melhorar o desempenho de sites e portais usando tecnologias open source como Varnish, Nginx e Apache. Aborda como essas ferramentas podem melhorar a performance, escalabilidade e segurança, reduzindo tempo de carregamento e recursos computacionais necessários.
Palestra feito na PHPConf - 2016
Apresento uma estrutra de escabilidade, passando pelos passos de crescimento de um software web.
Conceitos como cache, concorrências, storage para arquivos estáticos, servidores de busca, sessões em memória e afins.
Palestra feito na PHPConf - 2016
Tudo sobre cache em aplicativos PHP, comento sobre os pontos de falha, o problema de invalidação, estrategias de como aplicar cache, bem como todos os tipos de cache, opções e possibilidades de multiplos caches e afins.
Tópicos importantes:
-- Planejamento de cache
-- Estrátegias de invalidação
-- Cache em back end
-- Cache para front end
-- Cache reverso
-- Localstorage
Sempre buscando atuar com inteligência na área de desenvolvimento, como DevOps, arquiteto, líder de projeto e desenvolvedor fullstack, sempre visando a melhor implementação (tecnologia certa para a tarefa certa), análise de custo benefício, eficiência, arquitetura macro de serviços, fluxograma de desenvolvimento, automatização de tarefas e controle de qualidade e principalmente valor ao negócio.
Palestra feito na PHPConf - 2016
Apresento uma estrutra de escabilidade, passando pelos passos de crescimento de um software web.
Conceitos como cache, concorrências, storage para arquivos estáticos, servidores de busca, sessões em memória e afins.
Palestra feito na PHPConf - 2016
Tudo sobre cache em aplicativos PHP, comento sobre os pontos de falha, o problema de invalidação, estrategias de como aplicar cache, bem como todos os tipos de cache, opções e possibilidades de multiplos caches e afins.
Tópicos importantes:
-- Planejamento de cache
-- Estrátegias de invalidação
-- Cache em back end
-- Cache para front end
-- Cache reverso
-- Localstorage
Sempre buscando atuar com inteligência na área de desenvolvimento, como DevOps, arquiteto, líder de projeto e desenvolvedor fullstack, sempre visando a melhor implementação (tecnologia certa para a tarefa certa), análise de custo benefício, eficiência, arquitetura macro de serviços, fluxograma de desenvolvimento, automatização de tarefas e controle de qualidade e principalmente valor ao negócio.
Com o uso cada vez maior de serviços de armazenamento em nuvem, a necessidade em migrar, replicar ou sincronizar arquivos armazenados localmente para serviços de armazenamento remoto pode se tornar uma tarefa árdua para administradores de sistemas que muitas vezes não dispõem de soluções adequadas para atender necessidades específicas de uma organização. Esta proposta pretende abordar algorítmos, técnicas de otimização em linguagem de programação e boas práticas em configurações de infraestrutura de servidores para ganhos em desempenho na transferência de arquivos e diretórios entre servidores e serviços de armazenamento em nuvem. Para comprovar os resultados, a proposta utilizará de um estudo de caso real para uma empresa no segmento B2B, comprovando eficiência em ganhos de desempenho e abrindo discussões para soluções técnicas em cenários diversos
O Elastic Cache é um serviço de cache avançado que voce pode usar nas suas aplicações que estão na nuvem da AWS. Apresentamos aqui os seus conceitos básicos e modos de uso.
Com o uso cada vez maior de serviços de armazenamento em nuvem, a necessidade em migrar, replicar ou sincronizar arquivos armazenados localmente para serviços de armazenamento remoto pode se tornar uma tarefa árdua para administradores de sistemas que muitas vezes não dispõem de soluções adequadas para atender necessidades específicas de uma organização. Esta proposta pretende abordar algorítmos, técnicas de otimização em linguagem de programação e boas práticas em configurações de infraestrutura de servidores para ganhos em desempenho na transferência de arquivos e diretórios entre servidores e serviços de armazenamento em nuvem. Para comprovar os resultados, a proposta utilizará de um estudo de caso real para uma empresa no segmento B2B, comprovando eficiência em ganhos de desempenho e abrindo discussões para soluções técnicas em cenários diversos
Slides do treinamento técnico da força de vendas sobre a nova plataforma de IaaS da Embratel. Conheça: http://portal.embratel.com.br/cloud/cloud-server/
Sistemas online podem apresentar gargalos no processamento em períodos sazonais. Um estudo baseado em filas pode indicar a métrica de negócio ou infraestrutura que representa o fator de stress na infraestrutura através de simulações. O objetivo é mostrar como aplicar esse método em produtos de mercado (Oracle, SQL Server, SAP, etc) e em situações de negócios que operam nestas características.
Avaliação de arquiteturas de uma solução de Backup na NuvemKleber Silva
Nessa apresentação iremos analisar a evolução e pré-requisitos dos Backups corporativos, avaliando as diferenças das arquiteturas disponíveis de Backup com armazenamento na Nuvem, para definir melhores práticas de desempenho e capacidade para a implementação de uma solução para empresas
Web no seu dia a dia é 100% velocidade de resposta. Usuários odeiam esperar, ficamos frustrados enquanto vídeos, páginas e suas imagens são carregadas lentamente. É uma (má) experiência aos usuários! Na verdade algo chocante.
Sendo desenvolvedor web, um de suas primeiras ferramentas para ganho de banda no server-side assim como no client-side são os princípios de HTTP Caching. O tempo investido na otimização de sites vale a pena, então vamos mergulhar nisto!!
Apresentação Software Freedom Day 2017 - Natal/RN - Algumas soluções F.O.S.S ...Werneck Costa
Algumas soluções F.O.S.S adotadas pela CAERN, seus benefícios diretos e indiretos. Apresentação feita para o Software Freedom Day, realizado em Natal/RN no dia 16/09/2017, nas dependências do UNIRN.
Desenvolvendo Sistema Cloud e Web Full-stack DeveloperCesar Romero
TDC 2018 - Trilha Delphi
Repositório https://github.com/cesarliws/full-stack-tdc-poa
Introdução as plataformas web e cloud.
Como criar um servidor back-end cloud com Delphi MVC Framework simples, eficiente, alto desempenho e de fácil manutenção.
Como criar front-end web rapidamente com a biblioteca React.js, para consumir o back-end criado com Delphi MVC Framework.
* Introdução a Plataforma Web e Cloud
* Servidor RESTful com DMVC Framework e FireDAC
* Introdução ao Desenvolvimento front-end JavaScript com React.js
Com o uso cada vez maior de serviços de armazenamento em nuvem, a necessidade em migrar, replicar ou sincronizar arquivos armazenados localmente para serviços de armazenamento remoto pode se tornar uma tarefa árdua para administradores de sistemas que muitas vezes não dispõem de soluções adequadas para atender necessidades específicas de uma organização. Esta proposta pretende abordar algorítmos, técnicas de otimização em linguagem de programação e boas práticas em configurações de infraestrutura de servidores para ganhos em desempenho na transferência de arquivos e diretórios entre servidores e serviços de armazenamento em nuvem. Para comprovar os resultados, a proposta utilizará de um estudo de caso real para uma empresa no segmento B2B, comprovando eficiência em ganhos de desempenho e abrindo discussões para soluções técnicas em cenários diversos
O Elastic Cache é um serviço de cache avançado que voce pode usar nas suas aplicações que estão na nuvem da AWS. Apresentamos aqui os seus conceitos básicos e modos de uso.
Com o uso cada vez maior de serviços de armazenamento em nuvem, a necessidade em migrar, replicar ou sincronizar arquivos armazenados localmente para serviços de armazenamento remoto pode se tornar uma tarefa árdua para administradores de sistemas que muitas vezes não dispõem de soluções adequadas para atender necessidades específicas de uma organização. Esta proposta pretende abordar algorítmos, técnicas de otimização em linguagem de programação e boas práticas em configurações de infraestrutura de servidores para ganhos em desempenho na transferência de arquivos e diretórios entre servidores e serviços de armazenamento em nuvem. Para comprovar os resultados, a proposta utilizará de um estudo de caso real para uma empresa no segmento B2B, comprovando eficiência em ganhos de desempenho e abrindo discussões para soluções técnicas em cenários diversos
Slides do treinamento técnico da força de vendas sobre a nova plataforma de IaaS da Embratel. Conheça: http://portal.embratel.com.br/cloud/cloud-server/
Sistemas online podem apresentar gargalos no processamento em períodos sazonais. Um estudo baseado em filas pode indicar a métrica de negócio ou infraestrutura que representa o fator de stress na infraestrutura através de simulações. O objetivo é mostrar como aplicar esse método em produtos de mercado (Oracle, SQL Server, SAP, etc) e em situações de negócios que operam nestas características.
Avaliação de arquiteturas de uma solução de Backup na NuvemKleber Silva
Nessa apresentação iremos analisar a evolução e pré-requisitos dos Backups corporativos, avaliando as diferenças das arquiteturas disponíveis de Backup com armazenamento na Nuvem, para definir melhores práticas de desempenho e capacidade para a implementação de uma solução para empresas
Web no seu dia a dia é 100% velocidade de resposta. Usuários odeiam esperar, ficamos frustrados enquanto vídeos, páginas e suas imagens são carregadas lentamente. É uma (má) experiência aos usuários! Na verdade algo chocante.
Sendo desenvolvedor web, um de suas primeiras ferramentas para ganho de banda no server-side assim como no client-side são os princípios de HTTP Caching. O tempo investido na otimização de sites vale a pena, então vamos mergulhar nisto!!
Apresentação Software Freedom Day 2017 - Natal/RN - Algumas soluções F.O.S.S ...Werneck Costa
Algumas soluções F.O.S.S adotadas pela CAERN, seus benefícios diretos e indiretos. Apresentação feita para o Software Freedom Day, realizado em Natal/RN no dia 16/09/2017, nas dependências do UNIRN.
Desenvolvendo Sistema Cloud e Web Full-stack DeveloperCesar Romero
TDC 2018 - Trilha Delphi
Repositório https://github.com/cesarliws/full-stack-tdc-poa
Introdução as plataformas web e cloud.
Como criar um servidor back-end cloud com Delphi MVC Framework simples, eficiente, alto desempenho e de fácil manutenção.
Como criar front-end web rapidamente com a biblioteca React.js, para consumir o back-end criado com Delphi MVC Framework.
* Introdução a Plataforma Web e Cloud
* Servidor RESTful com DMVC Framework e FireDAC
* Introdução ao Desenvolvimento front-end JavaScript com React.js
Palestra descrevendo de forma geral o processo para criar arquiteturas adequadas para micro-serviços e também para refatorar uma aplicação antiga para esta arquitetura.
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureFabrício Lopes Sanchez
Nesta palestra apresento o processo de migração do SED (Secretaria Escolar Digital do estado de São Paulo) para o Microsoft Azure. Palestra apresentada no QCon 2016.
Com a consolidação da linguagem PHP no mercado de aplicações de grande porte, o desenvolvimento de sistemas operando sobre servidores distribuídos torna-se vital para a sobrevivência do negócio e garantia de acesso e atendimento a todos os seus usuários. Nesse contexto, a palestra abordará técnicas para o planejamento e desenvolvimento de aplicações clusterizadas, cloudcomputing e balanceamento de carga de bases de dados.
Cakephp - framework de desenvolvimento de aplicações Web em PHPArlindo Santos
Apresentação da framework de desenvolvimento de aplicações web - cakePHP.
Aprender a criar uma aplicação web em PHP usando o CakePHP.
- Instalação?
- Organização?
- Como criar um Blog?
- Autenticação?
- Multi-utilizador?
Dicas para desenvolvedores que querem fazer uma Web rápida e divertida.
Explicações sobre HTTP, HTML, CSS, JavaScripts, ferramentas e bibliotecas que fazem nossa vida mais fácil
Infraestrutura em nuvem com Amazon Web Services (AWS)Infosimples
Esta apresentação foi feita para um minicurso na Escola Politécnica da USP administrado pela Infosimples. Foram discutidos temas de Infraestrutura com foco em escalabilidade e redundância. Também foram apresentadas as opções comerciais de contratação de infraestrutura. Por fim, uma atividade prática de publicação (deployment) de uma aplicação web foi realizada.
https://infosimples.com/artigos/como-publicar-uma-aplicacao-web-usando-aws
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...WordCamp Floripa
Desenvolvedor WEB, professor, historiador, fotógrafo amador e pai da Gabriela e Maria Teresa. Entusiasta de tecnologias open-source, reconhece que o WordPress é hoje uma das principais ferramentas no desenvolvimento de uma internet mais democrática, participativa e livre. Persegue o desafio de aliar tecnologia e educação na construção de um mundo melhor.
Breve descrição sobre a apresentação: A apresentação tem por finalidade principal realizar um comparativo sobre as diferentes formas de instalar/configurar um ambiente WordPress num servidor cloud. Nesse sentido, reunimos aqui experiências diversas de criação de um website na Amazon Web Services (AWS), um dos principais serviços de computação em nuvem. Servidores cloud é uma realidade cada vez mais presente na vida de programadores, gestores, empreendedores, produtores de conteúdo, dentre outros atores do mundo digital.
2. Tópicos do Nosso WebSeminário
• Varnish
realmente
melhora
a
performance
do
meu
ambiente
Web
?
• Vale
a
pena
migrar
o
meu
servidor
Web
Apache
para
Nginx
?
• Em
quais
casos
o
Nginx
não
é
recomendado
?
• Ataques
DDoS/DoS
versus
Varnish
+
Nginx,
como
é
essa
luta,
tem
um
vencedor
?
• O
que
muda
para
ambientes
web
com
o
PHP5.4
e
PHP5.5
?
Perguntas e respostas que nos auxiliarão a melhorar a performance do nosso
ambiente Web.
3. Objetivo
Demonstrar
como
é
possível
melhorar
a
performance
de
um
site
ou
portal,
seja
ele
feito
em
PHP
ou
HTML,
com
tecnologias
opensource,
como
Varnish
+Nginx+Apache,
além
de
miUgar
uma
série
de
ataques
e
vulnerabilidades,
como
DoS/DDoS
Performance
Analisar
Implementar
Testar
Coletar
4. Por que analisamos a performance ?
• Redução
de
tempo
ou
recursos
de
tecnologia
–
encontrando
pontos
a
melhorar,
reconfigurar
ou
tunar
• Procuramos
por
arquiteturas
escaláveis
– ambientes
que
possam
atender,
e
rápido,
as
necessidades
de
nossos
clientes
• Resolução
de
problemas
– procurando
e
resolvendo
problemas
quanto
a
gargalos
e
latência
O trabalho de um sysadmin nunca acaba quando o assunto é performance
5. Sistema Operacional - Linux
• Antes
de
sair
instalando
tudo
que
vc
acha
que
precisa,
análise
o
servidor
Linux
que
vc
uBlizará:
– Kernel
– Rede
– Disco
(HDD
versus
SSD)
– File
System
– Pacotes
necessário
para
o
seu
ambiente
funcionar
e
ser
monitorado
– E
possível
segmentação
de
funções
e
produtos
–
(um
servidor
para
cada
coisa)
Um tuning bem feito em seu linux poderá lhe salvar de diversos problemas
6. Cache
• Redução
no
tempo
de
carregamento
de
uma
página
ou
portal
• Melhora
a
sensação
de
navegação
para
o
usuário
• Diminuição
da
quanBdade
de
recursos
computacionais,
tais
como
memória
e
processador,
para
suportar
um
site
ou
portal
• Previne
sobre-‐cargas,
tempo
de
outage
e
até
mesmo
ataques,
como
DDoS/DoS
Layer
7
• Facilidade
na
escalabilidade
do
seu
projeto
web
Por que trabalhar com cache é tão importante hoje em dia ?
7. Cache - Varnish
A solução de cache opensource mais utilizada do mercado
Basicamente,
o
Varnish
funciona
desta
forma,
mas
há
regras
que
podem
melhorar
ainda
mais
a
sua
performance,
além
de
aumentar
a
segurança
de
seu
site
ou
portal
–
VSF
&
Security.vcl,
por
exemplo
8. Cache - Varnish
No que o Varnish é diferente, se comparado com outros serviços ou
servidores de cache ?
HDD
versus
RAM
Versus
SSD
1
2
Fonte:
hdp://devblog.moz.com/
2011/05/how-‐to-‐cache-‐hdp-‐
range-‐requests/
9. Análise & Coleta – IOPS
hdp://eshop.macsales.com/shop/SSD/PCIe/OWC/
Mercury_Accelsior/RAID
É
o
número
de
operações
por
segundo
que
um
disco
individual
consegue
chegar.
Por
exemplo,
um
disco
SAS
de
10K
consegue
em
média
140
IOPS.
Note
que
a
diferença
é
muito
grande,
principalmente
levando
em
conta
os
novos
discos
SSD.
Requer
atenção
em
ambientes
suportados
em
Cloud
Cortesia do Curso de Performance and Tunig Linux do Coruja****
10. Cache - Varnish
• Globo.com,
R7,
Wall
Mart
e
tantos
outros
portais
e
sites
brasileiros
• No
meu
caso,
eu
já
reduzi
um
ambiente
web
suportado
por
16
servidores
para
4,
mas
como
?
– 2
servidores
varnish
+
2
servidores
Nginx(Opcode
5.4
PHP
+
PHP5-‐FPM*)
• Possibilidade
de
trabalhar
com
diferentes
Bpos
de
serviços
IaaS
– Os
mais
barato
e
interessante
para
o
seu
negócio,
já
que
a
quanBdade
de
requests
para
o
seu
servidor
web
cai
drasBcamente.
– Que
tal
migrar
da
Amazon
para
Digital
Ocean
?
Alguns Casos de Sucesso quanto a implementação do Varnish
11. Cache - Varnish
Só para ilustrar algumas das funções que ele possui
Fonte:
h)p://devblog.moz.com/2011/05/
how-‐to-‐cache-‐h)p-‐range-‐requests/
13. Nginx – Um dos mais rápidos WebServers
Por que o Nginx virou sensação entre os grandes blogs e portais em todo o
mundo ?
"Apache
is
like
Microsoo
Word,
it
has
a
million
opUons
but
you
only
need
six.
Nginx
does
those
six
things,
and
it
does
five
of
them
50
Umes
faster
than
Apache.”
by
Chris
Lea
Menos
fuções,
menos
recursos,
uma
forma
diferente
de
lidar
com
requisições
HTTP
e
HTTPS,
entregando
assim
mais
performance.
14. Nginx – Utilização e Crescimento
Como está a utilização deste Web Server pelo mundo
Fonte:
h)p://news.netcraD.com/archives/
2014/03/03/march-‐2014-‐web-‐server-‐
survey.html/
15. Nginx – Como ele funciona ?
Uma nova abordagem, agora assíncrona, de resposta a requisições
Fonte:
hdp://www.aosabook.org/en/nginx.html
16. Nginx
Comparando com outros WebServers
• Ele
é
2x
mais
rápido,
se
comparado
com
um
Apache,
mesmo
o
2.4,
e
4x
mais
rápido,
se
comparado
com
o
IIS
7
• Possui
menos
módulos,
mas
altamente
performáBcos
e
fáceis
de
serem
uBlizados
• Já
há
Waf(Web
ApplicaBon
Firewall)
compaeveis
com
ele,
como
o
Mod_security
e
o
Naxsi
• Há
possibilidade
de
migrar
regras
.htaccess
para
ele
• UBliza
menos
recursos
computacionais
se
comparado
com
o
Apache
–
seja
memória
e
CPU
• Performa
bem
melhor
quando
integrado
com
serviços
de
cache,
como
php-‐apc,
opcode
e
gerenciamento
de
processos,
como
o
PHP5-‐FPM.
20. Varnish + Nginx
Trabalhando em conjunto contra ataques DDoS/DoS Layer 7
• A
combinação
de
performance
do
conjunto
Varnish+Nginx(S.O)
gera
um
ambiente
muito
mais
robusto
e
preparado
para
diversos
Bpos
de
ataque,
principalmente
DoS
e
DDoS*
• Exemplos:
Coruja
de
TI
–
Sedentario&HiperaBvo
–
NãoSalvo
• O
acesso
aos
logs
e
o
acompanhamento
das
requisições
farão
toda
a
diferença
para
implementação
de
medidas
para
melhorar
a
performance
e
até
mesmo
o
bloqueio
de
alguns
ips
• Há
casos
em
que
precisamos
uBlizar
outras
alternaBvas,
como
o
CloudFlare,
Incapsula
ou
CloudProxy
21. Varnish + Nginx
No caso de ambientes PHP, a utilização de opcode, php5-fpm ou php-apc,
melhora ainda mais a performance
• Sites
ou
portais
PHP,
nos
dias
de
hoje,
precisam
rodar
em
ambientes
Web
suportados
por
tecnologias
que
gerenciem
melhor
o
processamento,
a
compilação
e
o
cache
do
código
• PHP5.4
trouxe
ao
mercado
o
opcode
imbuBdo,
trocando
assim
o
php-‐apc
por
ele.
Melhora
de
mais
de
15%
quando
o
assunto
é
performance
• O
PHP5-‐FPM
possibilita
um
gerenciamento
melhor
quanto
aos
processos
e
a
uBlização
correta
de
recursos
• No
caso
de
Performance
para
o
PHP,
há,
além
do
Opcode
e
do
APC
o
OpBmezer+
hlp://www.intracto.com/blog/testdriving-‐zend-‐
opBmizer