21
Cícero Verneck Corrêa uWSGI.. Por quê? Quando? Onde? domingo, 25 de novembro de 12

uWSGI.. Por quê? Quando? Onde? Como?

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: uWSGI.. Por quê? Quando? Onde? Como?

Cícero Verneck Corrêa

uWSGI.. Por quê? Quando? Onde?

domingo, 25 de novembro de 12

Page 2: uWSGI.. Por quê? Quando? Onde? Como?

uwsgi - o protocolo

• Derivado do protocolo SCGI

• Representação binaria

• Tamanho do cabeçalho: 4 bytes

domingo, 25 de novembro de 12

Page 3: uWSGI.. Por quê? Quando? Onde? Como?

Eu não posso usar esse protocolomas quero usar os recursos

• HTTP

• FastCGI

• ZeroMQ

domingo, 25 de novembro de 12

Page 4: uWSGI.. Por quê? Quando? Onde? Como?

uWSGI - application server container

• Escrito em C

• Cache

• RPC

• Gestão de Processos

• Implementação de cluster

• Plugins podem ser escritos em C/C++ e Objective-C

• Open Source (github.com/unbit/uwsgi)

domingo, 25 de novembro de 12

Page 5: uWSGI.. Por quê? Quando? Onde? Como?

uWSGI - Suporte

Tecnologia Versão StatusPython 0.9.1 EstávelLua 0.9.5 EstávelPerl 0.9.5 EstávelRuby 0.9.7 EstávelErlang 0.9.5 EstávelPHP 1.0 Estável

Mono(.net) 0.9.7 InutilizávelJVM 0.9.7 AlphaGO 1.4 Estável

domingo, 25 de novembro de 12

Page 6: uWSGI.. Por quê? Quando? Onde? Como?

uWSGI - configuração

• Formatos: ini, json, xml, yaml, SQLite, LDAP, ENV, Linha de comando

• Variáveis mágicas

• Variáveis customizadas

• Configuração Logica

• Grande número de opções de configuração

domingo, 25 de novembro de 12

Page 7: uWSGI.. Por quê? Quando? Onde? Como?

uWSGI - Variáveis mágicas

app1.ini

domingo, 25 de novembro de 12

Page 8: uWSGI.. Por quê? Quando? Onde? Como?

uWSGI - Variáveis mágicas

app1.ini

domingo, 25 de novembro de 12

Page 9: uWSGI.. Por quê? Quando? Onde? Como?

uWSGI - Variáveis customizadas

domingo, 25 de novembro de 12

Page 10: uWSGI.. Por quê? Quando? Onde? Como?

uWSGI - Variáveis customizadas

domingo, 25 de novembro de 12

Page 11: uWSGI.. Por quê? Quando? Onde? Como?

uWSGI - Configuração Logica

for .. endforif-dir / if-not-dirif-env / if-not-envif-exists / if-not-existsif-file / if-not-fileif-option / if-not-optionif-reload / if-not-reload

declarações suportadas

domingo, 25 de novembro de 12

Page 12: uWSGI.. Por quê? Quando? Onde? Como?

uWSGI - Opções de Configuração

• socket

• processes

• master

• max-requests

• plugins

• logto

• uid, gid

• virtualenv

• pythonpath

• idle

• emperor

• zerg

https://github.com/unbit/uwsgi-docs

domingo, 25 de novembro de 12

Page 13: uWSGI.. Por quê? Quando? Onde? Como?

multi-app deploymentEmperor

domingo, 25 de novembro de 12

Page 14: uWSGI.. Por quê? Quando? Onde? Como?

Escalabilidade

Zerg

domingo, 25 de novembro de 12

Page 15: uWSGI.. Por quê? Quando? Onde? Como?

Auto escalabilidadeBroodlord

domingo, 25 de novembro de 12

Page 16: uWSGI.. Por quê? Quando? Onde? Como?

Auto escalabilidadeBroodlord

domingo, 25 de novembro de 12

Page 17: uWSGI.. Por quê? Quando? Onde? Como?

decoradores, spool, cache, RPC, File, etc.

APIs

domingo, 25 de novembro de 12

Page 18: uWSGI.. Por quê? Quando? Onde? Como?

decoradores, spool, cache, RPC, File, etc.

APIs

domingo, 25 de novembro de 12

Page 19: uWSGI.. Por quê? Quando? Onde? Como?

Framework de cache

Cache

domingo, 25 de novembro de 12

Page 20: uWSGI.. Por quê? Quando? Onde? Como?

uwsgitop

domingo, 25 de novembro de 12

Page 21: uWSGI.. Por quê? Quando? Onde? Como?

Obrigado...

[email protected]

github.com/CiceroComp

@CiceroComp

domingo, 25 de novembro de 12