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

Sistemas Distribuídos e PHP - Darkmira Tour BR 2016

Sistemas Distribuídos e PHP - Darkmira Tour BR 2016

Palestra apresentada no Darkmira Tour BR 2016, fala sobre como conseguir processamento paralelo e distribuído utilizando PHP.
Código apresentado no GitHub: https://github.com/dianaarnos/darkmiratourbr-2016

Para avaliação da palestra, visite o Joind: https://joind.in/event/darkmira-tour-php-2016/sistemas-distribudos-e-php

Diana Arnos

March 19, 2016
Tweet

More Decks by Diana Arnos

Other Decks in Programming

Transcript

  1. PHP Web Developer Analista Desenvolvedora @ Agrosmart Instrutora @ Caldo

    e Gouveia Diana Ungaro Arnos @dianaarnos www.dianaarnos.com
  2. distribuir acessos não é o mesmo que distribuir processamento SERVIDOR

    LOAD BALANCE SERVIDOR SERVIDOR APLICAÇÃO APLICAÇÃO APLICAÇÃO
  3. APLICAÇÃO SERVIDOR SERVIDOR o processamento da tarefa é distribuído em

    paralelo entre computadores diferentes SERVIDOR (Solicita execução da tarefa X) Tarefa X parte 1 Tarefa X parte 3 Tarefa X parte 2
  4. Processamento Paralelo Distribuído ? Multi-thread? pthreads Distribuído e paralelo? Stream

    sockets + pthreads Multi-process? pcntl_fork( ), exec( ), shell_exec( ), passthru( )
  5. pthreads PHP compilado com ZTS (Thread Safety) Compatível com PHP7

    É seguro? (https://gist.github.com/krakjoe/6437782) Referência: ◦ http://pthreads.org ◦ http://docs.php.net/manual/en/book.pthreads.php
  6. Stream Sockets Sockets são mecanismos de comunicação entre processos Para

    modelo cliente/servidor: IP+porta ◦ Ex.: 127.0.0.1:80 fgets( ), fclose( ), fread( ), etc... Stream sockets: