SlideShare uma empresa Scribd logo
1 de 31
DEFINIÇÃO DE PÚBLICO-ALVO
IX Encontro PythonRio
Como a Globosat utiliza Python
para distribuição de conteúdo
Marcos Cardoso
DEFINIÇÃO DE PÚBLICO-ALVO
MARCOS CARDOSO
Bacharel em Ciência da
Computação - UFRJ
Desenvolvedor Backend
@ Globosat
Entusiasta de Tuning,
Backend, Game Dev,
VR, Mobile
facebook.com/vrcmarcos
github.com/vrcmarcos
linkedin.com/vrcmarcos
vrcmarcos@gmail.com
slideshare.net/vrcmarcos
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
A Globosat
● 33 canais
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
A Globosat
● 33 canais
● Mais de 80 mil mídias
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
A Globosat
● 33 canais
● Mais de 80 mil mídias
● Programação linear e não-linear
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
A Globosat
● 33 canais
● Mais de 80 mil mídias
● Programação linear e não-linear
● Atendimento interno: VODs (Produtos Play)
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
A Globosat
● 33 canais
● Mais de 80 mil mídias
● Programação linear e não-linear
● Atendimento interno: VODs (Produtos Play)
● Atendimento externo: Operadoras
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
Os formulários
● O IBMS
● O Sisleo
● O CMS
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
O CMS
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
Cenário
● Possui um banco de dados próprio (MySQL/Percona)
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
Cenário
● Possui um banco de dados próprio (MySQL/Percona)
● Precisa notificar as API’s a cada edição no cadastro de
mídia ( Globosat Play, Telecine Play )
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
Cenário
● Possui um banco de dados próprio (MySQL/Percona)
● Precisa notificar as API’s a cada edição no cadastro de
mídia ( Globosat Play, Telecine Play )
● Aproximadamente 13 mil edições/dia
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
Cenário
● Possui um banco de dados próprio (MySQL/Percona)
● Precisa notificar as API’s a cada edição no cadastro de
mídia ( Globosat Play, Telecine Play )
● Aproximadamente 13 mil edições/dia
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
Solução
● Paralelizar o processamento
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ - http://python-rq.org/
● Cria uma fila usando o Redis (Armazém de dados
usado como BD/Cache/Broker) para enfileirar e
consumir Jobs
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ - http://python-rq.org/
● Cria uma fila usando o Redis (Armazém de dados
usado como BD/Cache/Broker) para enfileirar e
consumir Jobs
● Fornece um Worker para consumir os Jobs através de
linha de comando
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ - http://python-rq.org/
● Cria uma fila usando o Redis (Armazém de dados
usado como BD/Cache/Broker) para enfileirar e
consumir Jobs
● Fornece um Worker para consumir os Jobs através de
linha de comando
● Fácil de implementar
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ - http://python-rq.org/
● Cria uma fila usando o Redis (Armazém de dados
usado como BD/Cache/Broker) para enfileirar e
consumir Jobs
● Fornece um Worker para consumir os Jobs através de
linha de comando
● Fácil de implementar
● Suporte à Django, Heroku, Supervisor e Sentry (Log
das Exceptions)
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ - http://python-rq.org/
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ - http://python-rq.org/
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ - http://python-rq.org/
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ - http://python-rq.org/
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ no CMS
● As notificações são processadas em lote (Até 10
edições por lote)
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ no CMS
● As notificações são processadas em lote (Até 10
edições por lote)
● Servidor isolado, rodando 8 workers para consumo
das notificações
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ no CMS
● As notificações são processadas em lote (Até 10
edições por lote)
● Servidor isolado, rodando 8 workers para consumo
das notificações
● Desenvolvido para suportar picos de 40 mil lotes/dia
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ no CMS
● Integrado ao Django
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ no CMS
● Integrado ao Django
● Comando para rodar o worker via manage.py
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ no CMS
● Integrado ao Django
● Comando para rodar o worker via manage.py
● Interface web para visualizar o andamento das
tarefas
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ no CMS
● Integrado ao Django
● Comando para rodar o worker via manage.py
● Interface web para visualizar o andamento das
tarefas
● Usamos a biblioteca ZDaemon para “daemonizar” os
workers
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
PythonRQ no CMS
IX ENCONTRO PYTHONRIO
DEFINIÇÃO DE PÚBLICO-ALVO
Obrigado!
IX ENCONTRO PYTHONRIO
facebook.com/vrcmarcos
github.com/vrcmarcos
linkedin.com/vrcmarcos
vrcmarcos@gmail.com
slideshare.net/vrcmarcos

Mais conteúdo relacionado

Semelhante a Como a Globosat usa Python e RQ para distribuição de conteúdo

Python para programadores Ruby
Python para programadores RubyPython para programadores Ruby
Python para programadores RubyEric Hideki
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e TkCarlos Campani
 
Apresentação #TDC2013 - Aplicações Profissionais com Radiuino
Apresentação #TDC2013 - Aplicações Profissionais com RadiuinoApresentação #TDC2013 - Aplicações Profissionais com Radiuino
Apresentação #TDC2013 - Aplicações Profissionais com RadiuinoOmar Branquinho
 
Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014Ramiro Luz
 
Webinar: Conheça o RTOS NuttX
Webinar: Conheça o RTOS NuttXWebinar: Conheça o RTOS NuttX
Webinar: Conheça o RTOS NuttXEmbarcados
 
Python na reformulação arquitetural do projeto SciELO
Python na reformulação arquitetural do projeto SciELOPython na reformulação arquitetural do projeto SciELO
Python na reformulação arquitetural do projeto SciELOGustavo Fonseca
 
The zen of python 2010
The zen of python 2010The zen of python 2010
The zen of python 2010Luiz Aldabalde
 
Linguagem de Programação
Linguagem de ProgramaçãoLinguagem de Programação
Linguagem de Programaçãomoiplabs
 
Case braslo - arquitetura de sistemas
Case   braslo - arquitetura de sistemasCase   braslo - arquitetura de sistemas
Case braslo - arquitetura de sistemasJuliana Maria Lopes
 
Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Ramiro Luz
 
TDC SP 2015 - PHP7: melhor e mais rápido
TDC SP 2015 - PHP7: melhor e mais rápidoTDC SP 2015 - PHP7: melhor e mais rápido
TDC SP 2015 - PHP7: melhor e mais rápidoBruno Ricardo Siqueira
 
Aula 02 - Análise de Dados - Introdução ao Python.pdf
Aula 02 - Análise de Dados - Introdução ao Python.pdfAula 02 - Análise de Dados - Introdução ao Python.pdf
Aula 02 - Análise de Dados - Introdução ao Python.pdfAcauan Ribeiro
 
TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...
TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...
TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...tdc-globalcode
 
Big data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dadosBig data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dadosRenan Moreira de Oliveira
 
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...Joao Galdino Mello de Souza
 
Planejamento de Capacidade com ferramentas gratuitas
Planejamento de Capacidade com ferramentas gratuitasPlanejamento de Capacidade com ferramentas gratuitas
Planejamento de Capacidade com ferramentas gratuitasRodrigo Campos
 
DBA BRASIL 1.0 - O Futuro do DBA em um universo as a Service.
DBA BRASIL 1.0 - O Futuro do DBA em um universo as a Service.DBA BRASIL 1.0 - O Futuro do DBA em um universo as a Service.
DBA BRASIL 1.0 - O Futuro do DBA em um universo as a Service.Carlos Smaniotto
 

Semelhante a Como a Globosat usa Python e RQ para distribuição de conteúdo (20)

Canivete python
Canivete pythonCanivete python
Canivete python
 
Python para programadores Ruby
Python para programadores RubyPython para programadores Ruby
Python para programadores Ruby
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e Tk
 
Apresentação #TDC2013 - Aplicações Profissionais com Radiuino
Apresentação #TDC2013 - Aplicações Profissionais com RadiuinoApresentação #TDC2013 - Aplicações Profissionais com Radiuino
Apresentação #TDC2013 - Aplicações Profissionais com Radiuino
 
Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014
 
Webinar: Conheça o RTOS NuttX
Webinar: Conheça o RTOS NuttXWebinar: Conheça o RTOS NuttX
Webinar: Conheça o RTOS NuttX
 
Python na reformulação arquitetural do projeto SciELO
Python na reformulação arquitetural do projeto SciELOPython na reformulação arquitetural do projeto SciELO
Python na reformulação arquitetural do projeto SciELO
 
The zen of python 2010
The zen of python 2010The zen of python 2010
The zen of python 2010
 
Linguagem de Programação
Linguagem de ProgramaçãoLinguagem de Programação
Linguagem de Programação
 
Case braslo - arquitetura de sistemas
Case   braslo - arquitetura de sistemasCase   braslo - arquitetura de sistemas
Case braslo - arquitetura de sistemas
 
Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.
 
TDC SP 2015 - PHP7: melhor e mais rápido
TDC SP 2015 - PHP7: melhor e mais rápidoTDC SP 2015 - PHP7: melhor e mais rápido
TDC SP 2015 - PHP7: melhor e mais rápido
 
Aula 02 - Análise de Dados - Introdução ao Python.pdf
Aula 02 - Análise de Dados - Introdução ao Python.pdfAula 02 - Análise de Dados - Introdução ao Python.pdf
Aula 02 - Análise de Dados - Introdução ao Python.pdf
 
TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...
TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...
TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...
 
Go no Luiza Labs
Go no Luiza LabsGo no Luiza Labs
Go no Luiza Labs
 
Big data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dadosBig data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dados
 
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...
 
Planejamento de Capacidade com ferramentas gratuitas
Planejamento de Capacidade com ferramentas gratuitasPlanejamento de Capacidade com ferramentas gratuitas
Planejamento de Capacidade com ferramentas gratuitas
 
Linux Raspberry Pi
Linux Raspberry PiLinux Raspberry Pi
Linux Raspberry Pi
 
DBA BRASIL 1.0 - O Futuro do DBA em um universo as a Service.
DBA BRASIL 1.0 - O Futuro do DBA em um universo as a Service.DBA BRASIL 1.0 - O Futuro do DBA em um universo as a Service.
DBA BRASIL 1.0 - O Futuro do DBA em um universo as a Service.
 

Como a Globosat usa Python e RQ para distribuição de conteúdo

Notas do Editor

  1. Capa com imagem. Caso não haja imagem para ilustrar a capa, apenas eliminar a imagem de referência acima.
  2. Página abertura de capítulo sem imagem.
  3. Página abertura de capítulo sem imagem.
  4. Página abertura de capítulo sem imagem.
  5. Página abertura de capítulo sem imagem.
  6. Página abertura de capítulo sem imagem.
  7. Página abertura de capítulo sem imagem.
  8. Página abertura de capítulo sem imagem.
  9. Página abertura de capítulo sem imagem.
  10. Página abertura de capítulo sem imagem.
  11. Página abertura de capítulo sem imagem.
  12. Página abertura de capítulo sem imagem.
  13. Página abertura de capítulo sem imagem.
  14. Página abertura de capítulo sem imagem.
  15. Página abertura de capítulo sem imagem.
  16. Página abertura de capítulo sem imagem.
  17. Página abertura de capítulo sem imagem.
  18. Página abertura de capítulo sem imagem.
  19. Página abertura de capítulo sem imagem.
  20. Página abertura de capítulo sem imagem.
  21. Página abertura de capítulo sem imagem.
  22. Página abertura de capítulo sem imagem.
  23. Página abertura de capítulo sem imagem.
  24. Página abertura de capítulo sem imagem.
  25. Página abertura de capítulo sem imagem.
  26. Página abertura de capítulo sem imagem.
  27. Página abertura de capítulo sem imagem.
  28. Página abertura de capítulo sem imagem.
  29. Página abertura de capítulo sem imagem.
  30. Página abertura de capítulo sem imagem.
  31. Página abertura de capítulo sem imagem.