Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Processamento Distribuído com Python

Processamento Distribuído com Python

Palestra que ocorreu no nosso #3 OpenTalks que foi realizado em Araraquara/SP com apoio e incentivo da S2it, nosso amigo que palestrou foi o Mateus Constanzo (https://br.linkedin.com/in/mateus-constanzo-361b8722)

B2519015997dff04abe2568ebb2cf729?s=128

Opensanca

March 01, 2016
Tweet

More Decks by Opensanca

Other Decks in Programming

Transcript

  1. Processamento distribuído - Python

  2. Mateus Constanzo ◇ Bacharelado em Sistemas de Informação – UNICEP

    ◇ Lato Sensu em Desenvolvimento de Software para a Web – UFSCar ◇ OCJP 6 - Oracle Certified Java Programmer ◇ Arquiteto de Solução ◇ Sócio-fundador
  3. Python 1

  4. ◇ Fácil aprendizagem ◇ Delimitação de bloco por identação ◇

    Interpretada ◇ Possui tipagem dinâmica ◇ È de alto nível ◇ Orientada a Objeto ◇ Multi-paradigma ◇ Multi-plataforma Características
  5. ◇ Código de leitura mais amigável ◇ Maior rapidez no

    desenvolvimento ◇ Pequena curva de aprendizagem ◇ Módulos expandem as funcionalidades da linguagem ◇ Multi-plataforma ◇ Portabilidade das aplicações Vantagens
  6. ◇ Requer um interpretador ◇ Mais lento do que linguagens

    compiladas ◇ Pouca popularidade Desvantagens
  7. Processamento distribuído 2

  8. “ Um sistema distribuído é um conjunto de computadores independentes

    entre si que se apresenta a seus usuários como um sistema único e coerente. Tanembaum, A
  9. “ Um sistema de processamento distribuído ou paralelo é um

    sistema que interliga vários nós de processamento de maneira que um processo de grande consumo seja executado no nó "mais disponível", ou mesmo subdividido por vários nós.
  10. None
  11. Celery 3

  12. ◇ Escrito em python ◇ Gerenciador de tarefas assíncrono ◇

    Gerenciador com tolerância a falhas ◇ Agendador ◇ Integração com os principais frameworks python (django, flask, web2py, tornado) ◇ Broker Backends (rabbitmq, redis, sqlalchemy, django,mongodb) ◇ Result Store Backends (Redis, memcached, MongoDB) Características
  13. Como Funciona ? User Message Broker Celery Workers Task Result

    Store
  14. None
  15. Criando a task assíncrona

  16. ◇ Chains - Tasks encadeadas ◇ Groups - Executa várias

    tasks em paralelo ◇ Chords - Executa uma tasks depois de um conjunto de tasks terminou ◇ Map & Starmap ◇ Chunks - Dividi tasks em lotes Workflows
  17. Exemplos https://github.com/mateusconstanzo/opensanca 4

  18. Monitoramento 5

  19. Flower

  20. Flower

  21. Obrigado! Alguma pergunta? Você pode encontrar em: ◇ @mateusconstanzo ◇

    mateusconstanzo@gmail.com