• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Deploy completo de uma aplicação Django
 

Deploy completo de uma aplicação Django

on

  • 2,677 views

Slides da palestra apresentada no mutirão python: https://plus.google.com/events/cf64tgv7l8g2fhe3gc1p417pqh8

Slides da palestra apresentada no mutirão python: https://plus.google.com/events/cf64tgv7l8g2fhe3gc1p417pqh8

Statistics

Views

Total Views
2,677
Views on SlideShare
1,205
Embed Views
1,472

Actions

Likes
0
Downloads
15
Comments
0

6 Embeds 1,472

http://allissonazevedo.com 1123
http://mixincode.com 265
http://mixincode.com.br 38
http://www.mixincode.com 31
http://www.mixincode.com.br 13
http://www.feedspot.com 2

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Deploy completo de uma aplicação Django Deploy completo de uma aplicação Django Presentation Transcript

    • DEPLOY COMPLETO DE UMAAPLICAÇÃO DJANGOAllisson AzevedoMonday, May 13, 13
    • ALLISSON AZEVEDOGraduado em Licenciatura em ComputaçãoDesenvolvedor Webhttp://speakerdeck.com/allissonhttp://slideshare.net/allissonhttp://github.com/allissonhttp://youtube.com/user/allissonazevedoMonday, May 13, 13
    • Monday, May 13, 13
    • Monday, May 13, 13
    • DEPLOYColocar sua aplicação em produção“Botar o bicho para funcionar”Monday, May 13, 13
    • MAS EU SOU APENAS UMDESENVOLVEDOR...Desenvolvedores devem saber como funciona oprocesso de deploy de sua aplicaçãoProvavelmente será sua responsabilidadeSimular o ambiente de produção localmenteApenas em empresas grandes você vai ter um timeespecializado em infraMonday, May 13, 13
    • NÃO QUERO ESQUENTAR ACABEÇA COM DEPLOYUse um PAAS (Platform as a Service - Plataformacomo Serviço)HerokuAWS Elastic BeanstalkEngineYard (sem suporte a python)Google AppengineMonday, May 13, 13
    • ONDE HOSPEDAR?Não use servidores compartilhados (shared hosting)Linode1 Gb de ram, 24 Gb storage, 2 Tb transferência$20AWS EC2RackspaceMonday, May 13, 13
    • QUAL SISTEMAOPERACIONAL?Linux (GNU/Linux para não ofender ninguém)Prefira distribuições com longo tempo de suporteUbuntu Server LTS (5 anos)RHEL e CentOS (7 anos)Monday, May 13, 13
    • PORQUE NGINX E NÃOAPACHE?Apacheprocess-based (forking or threaded)Nginxasynchronous (event-driven)http://daverecycles.com/post/3104767110/explain-event-driven-web-servers-to-your-grandmaMonday, May 13, 13
    • POSTGRESQL OU MYSQL?Dois ótimos servidoresSe for usar o MySQL, use a engine innodb nas tabelasMonday, May 13, 13
    • CONECTANDO SUAAPLICAÇÃOFastCGIGeralmente a opção disponível em servidorescompartilhadosWSGIPadrão do python (PEP 333)http://allissonazevedo.com/2011/08/25/introducao-ao-wsgi/Monday, May 13, 13
    • GUNICORN (GREENUNICORN)Port do Unicorn (ruby) para pythonServidor HTTP que suporta WSGI nativamente“Python WSGI HTTP Server for UNIX. Its a pre-forkworker model ported from Rubys Unicorn project.”Monday, May 13, 13
    • SUPERVISORÉ um sistema cliente/servidor que permite que osusuários monitorem e controlem processos emsistemas Unix like.Não é executado para substituir o init padrão dosistema operacionalMonday, May 13, 13
    • SENTRYPlataforma para monitorar erros em uma aplicaçãowebEscrito em DjangoO cliente raven enviam as informações para oservidorSubstituir o comportamento padrão de enviar um e-mail no caso de exceção não tratada no DjangoMonday, May 13, 13
    • OBJETIVOFazer o deploy da aplicação shortenerhttp://github.com/allisson/django-shortener-exampleMonday, May 13, 13
    • O QUEVAMOS USAR?Nginx para servir conteúdo estático e redirecionar asrequisições para o gunicornGunicorn como servidor de aplicaçãoSupervisor para gerenciar os processos do gunicornPostgresql como banco de dadosSentry para gerenciar possíveis erros em produçãoMonday, May 13, 13
    • MÃO NA MASSA!Monday, May 13, 13
    • PERGUNTAS?Monday, May 13, 13