Sistemas Distribuidos
Universidade Federal de São Paulo
Rafael Capucho
Viny Cesar
Introdução ao servidor web NGINX
Pronúncia: "engine-ex"
É um servidor de Proxy Reverso para
os protocolos HTTP, HTTPS, SMTP,
POP3 e IMAP.
Um proxy reverso é um tipo de servidor
que repassa recursos para o cliente
proviniente de um ou mais servidores
atuando de...
Forward Proxy atua como intermediário para os clientes
associados, retornando para eles os recursos acessíveis
pela rede.
...
Além do mais pode trabalhar como:
Load Balancer (Balanceamento de carga) *
HTTP Cache
Web Server (servidor de entrada)
Balanceamento de carga é uma técnica para
distribuir a carga de trabalho entre dois ou mais
computadores, discos rígidos o...
Balanceamento de carga
Balanceamento de carga
Até 15mil requisições por segundo pode ser usado
Load Balancer em software, alem disso é
necessário...
Instalando NGINX no Ubuntu:
sudo apt-get install nginx
Gerenciando o Daemon:
sudo service nginx start
sudo service nginx stop
Marcando para iniciar ao iniciar:
update-rc.d nginx defaults
Criando a estrutura de 1 site:
sudo mkdir -p /var/www/example.com/public_html
sudo chown -R www-data:www-data /var/www/exa...
Conteúdo: /var/www/example.com/public_html/index.html
<html>
<head>
<title>www.example.com</title>
</head>
<body>
<h1>Pági...
Copiando a estrutura padrão de configuração (default) para example.com:
sudo cp /etc/nginx/sites-available/default /etc/ng...
Editando as configurações:
server {
Listen 80;
root /var/www/example.com/public_html;
index index.html index.htm;
server_n...
Ativando o site:
sudo ln -s /etc/nginx/sites-available/example.com
/etc/nginx/sites-enabled/example.com
sudo service nginx...
Pronto, nosso servidor já pode receber conexões
através do dominio exemple.com
Configuração para Load Balancer
upstream backend {
server backend1.example.com;
server backend2.example.com;
server 192.16...
Configuração para Load Balancer
upstream backend {
server backend1.example.com weight=1;
server backend2.example.com weigh...
Configuração para Load Balancer
upstream backend {
ip_hash;
server backend1.example.com;
server backend2.example.com;
serv...
Configuração para Load Balancer
upstream backend {
server backend1.example.com weight=1;
server backend2.example.com weigh...
Configuração para Load Balancer
Dúvidas?!?!
Próximos SlideShares
Carregando em…5
×

Slides nginx

500 visualizações

Publicada em

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
500
No SlideShare
0
A partir de incorporações
0
Número de incorporações
8
Ações
Compartilhamentos
0
Downloads
19
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Slides nginx

  1. 1. Sistemas Distribuidos Universidade Federal de São Paulo Rafael Capucho Viny Cesar Introdução ao servidor web NGINX
  2. 2. Pronúncia: "engine-ex"
  3. 3. É um servidor de Proxy Reverso para os protocolos HTTP, HTTPS, SMTP, POP3 e IMAP.
  4. 4. Um proxy reverso é um tipo de servidor que repassa recursos para o cliente proviniente de um ou mais servidores atuando de maneira aglutinadora e transparente. Proxy Reverso
  5. 5. Forward Proxy atua como intermediário para os clientes associados, retornando para eles os recursos acessíveis pela rede. Enquanto o Forward Proxy v
  6. 6. Além do mais pode trabalhar como: Load Balancer (Balanceamento de carga) * HTTP Cache Web Server (servidor de entrada)
  7. 7. Balanceamento de carga é uma técnica para distribuir a carga de trabalho entre dois ou mais computadores, discos rígidos ou outros recursos, a fim de otimizar a utilização de recursos, maximizar o desempenho, minimizar o tempo de resposta e evitar sobrecarga. Balanceamento de carga
  8. 8. Balanceamento de carga
  9. 9. Balanceamento de carga Até 15mil requisições por segundo pode ser usado Load Balancer em software, alem disso é necessário soluções mais robustas. (Ou DNS Load Balancer)
  10. 10. Instalando NGINX no Ubuntu: sudo apt-get install nginx
  11. 11. Gerenciando o Daemon: sudo service nginx start sudo service nginx stop
  12. 12. Marcando para iniciar ao iniciar: update-rc.d nginx defaults
  13. 13. Criando a estrutura de 1 site: sudo mkdir -p /var/www/example.com/public_html sudo chown -R www-data:www-data /var/www/example.com/public_html sudo chmod 755 /var/www touch /var/www/example.com/public_html/index.html
  14. 14. Conteúdo: /var/www/example.com/public_html/index.html <html> <head> <title>www.example.com</title> </head> <body> <h1>Página de Exemplo</h1> </body> </html>
  15. 15. Copiando a estrutura padrão de configuração (default) para example.com: sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example.com Obs: Inicialmente colocamos as configurações dentro de Sites-Available e depois quando quisermos ativar o site fazemos um link dentro de Sites-Enable como veremos.
  16. 16. Editando as configurações: server { Listen 80; root /var/www/example.com/public_html; index index.html index.htm; server_name example.com; }
  17. 17. Ativando o site: sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com sudo service nginx restart
  18. 18. Pronto, nosso servidor já pode receber conexões através do dominio exemple.com
  19. 19. Configuração para Load Balancer upstream backend { server backend1.example.com; server backend2.example.com; server 192.168.0.105; } Server { listen 80; root /var/www/example.com/public_html; index index.html index.htm; server_name example.com; location / { proxy_pass http://backend; } }
  20. 20. Configuração para Load Balancer upstream backend { server backend1.example.com weight=1; server backend2.example.com weight=2; server 192.168.0.105 weight=4; } Server { listen 80; root /var/www/example.com/public_html; index index.html index.htm; server_name example.com; location / { proxy_pass http://backend; } } Obs: Peso 2 recebe 2x mais que 1
  21. 21. Configuração para Load Balancer upstream backend { ip_hash; server backend1.example.com; server backend2.example.com; server 192.168.0.105; } Server { listen 80; root /var/www/example.com/public_html; index index.html index.htm; server_name example.com; location / { proxy_pass http://backend; } }
  22. 22. Configuração para Load Balancer upstream backend { server backend1.example.com weight=1; server backend2.example.com weight=2; server 192.168.0.105 weight=4 max_fails=3 fail_timeout=15s; } Server { listen 80; root /var/www/example.com/public_html; index index.html index.htm; server_name example.com; location / { proxy_pass http://backend; } }
  23. 23. Configuração para Load Balancer Dúvidas?!?!

×