django em sites de alto tráfego - o case ucsvirtual

15
 Pycon Brasil 2008 Django em Sites de Alto Tráfego O Case UCSvirtual Jeronimo Zucco - [email protected] Leandro Zanuz - [email protected]

Upload: guest7e20b9

Post on 25-Dec-2014

2.339 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

  Pycon Brasil 2008

Django em Sites de Alto Tráfego

O Case UCSvirtual

Jeronimo Zucco ­ [email protected] Zanuz ­ [email protected]

  Pycon Brasil 2008

Jeronimo Zucco: Analista de Suporte da Universidade de Caxias do Sul, bacharel em Ciência da Computação e especialista  em  Gerência  e  Segurança  de  Redes  de Computadores,  certificado  Linux  Professional  Institute. Atua com Linux e servidores web desde 1998.

Leandro Zanuz: Desenvolvedor de aplicações Web com Django,  Plone,  Zope,  Python  na  Universidade  de  Caxias do Sul, tecnólogo em Processamento de Dados, cursando MBA em Gestão de TI. Programador web desde 1998.

Quem somos

  Pycon Brasil 2008

● 14 unidades de ensino (Interior do RS ­ Região Nordeste e Vale do Caí)

● 37.021 alunos [ Graduação, pós­graduação, ensino técnico e profissionalizante, ensino médio e extensão. ]

● 1.371 professores● 1.845 funcionários ● 5.000 computadores

Números da UCS

  Pycon Brasil 2008

● Utiliza Python/Zope desde 2001● Vários portais desenvolvidos em Plone● Adoção do Django em Janeiro/2007● Python é adotado na maior parte dos projetos● Equipe de desenvolvimento Python: 8 pessoas● Apoio instituicional no uso de software livre

UCS & Python

  Pycon Brasil 2008

O Portal UCSvirtual

● Portal de todos os serviços on­line da UCS;● Serviços da Graduação, Pós­Graduação, 

Pesquisa, Recursos Humanos, Gestão Administrativa e Gestão do Portal;

● Alguns serviços:– Matrícula on­line;– Histórico escolar;– Biblioteca;– Ambiente Virtual de Aprendizagem.

  Pycon Brasil 2008

Tecnologias Empregadas

● Django● Apache + SSL

– Mod_Expires– Mod_Deflate– Mod_Python– ModSecurity

● Squid● Single Sign­on (SSO)

● LVS– Heartbeat– Ldirectord

● Oracle● OpenLDAP● Nagios● Bacula

  Pycon Brasil 2008

Arquitetura

  Pycon Brasil 2008

­ Fail Over: IP Virtual passa ao Proxy 2

­ Fail Back: IP Virtual volta ao Proxy 1

­ Normal: IP Virtual no Proxy 1 e balanceamento 

de carga via LVS RR

Proxy Reverso

  Pycon Brasil 2008

Squid com cache_peer

● LB e HA usando cache_peer:

cache_peer 10.10.10.1 parent 80 0 no­query  originserver no­digest round­robin name=django1

cache_peer 10.10.10.2 parent 80 0 no­query  originserver no­digest round­robin name=django2

acl site1 dstdomain site1.dominio.com

cache_peer_access django1 allow site1

cache_peer_access django2 allow site1

cache_peer_access django1 deny all

cache_peer_access django2 deny all

  Pycon Brasil 2008

Squid

  Pycon Brasil 2008

Apache

● mod_deflateSetOutputFilter DEFLATE

SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar|pdf|swf|gif|jpe?g|png)$ no­gzip dont­vary

● mod_expires

ExpiresActive On

ExpiresByType image/png "now plus 3 day"

ExpiresByType text/css "now plus 2 day

● mod_security

  Pycon Brasil 2008

Customizações Django

● Sessão compartilhada;● Backend de autenticação;

–  (AUTHENTICATION_BACKENDS)

● SSO ­ Single sign­on.–  (SECRET_KEY e SESSION_COOKIE_DOMAIN)

  Pycon Brasil 2008

Próximos Passos

● Squid   Pound + Varnish→

● Apache   Nginx→

– Nginx (Engine X);– http://nginx.net– 04/2008: 1,018,503  ­  09/2008: 2,562,554 (netcraft)

● mod_python   mod_wsgi→

– Escrito completamente em C#– Mais rápido, menor uso de memória, seguro– http://code.google.com/p/modwsgi/

  Pycon Brasil 2008

Próximos Passos

● StaticGenerator for Django– Páginas estáticas ou pouco dinâmicas.– (quem somos, produtos, blogs, notícias, etc.)– http://superjared.com/projects/static­generator/

  Pycon Brasil 2008

Perguntas ?

Jeronimo Zucco: [email protected]

Leandro Zanuz: [email protected]