utilizando filas com php

37
Utilizando Filas com PHP

Upload: ivan-rosolen

Post on 14-Apr-2017

266 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Utilizando Filas com PHP

Utilizando Filas com PHP

Page 2: Utilizando Filas com PHP

Ivan RosolenFaculdade, Pós Graduação, Cursos e bla bla bla

Desenvolvedor a 15+ anosAutor de vários PHPT (testes para o PHP)

Entusiasta de novas tecnologiasMembro ativo do PHPSP

Head of Innovation @ Arizona

CTO @ Mokation

Page 3: Utilizando Filas com PHP

@ivanrosolen

Page 4: Utilizando Filas com PHP

AMQP

Page 5: Utilizando Filas com PHP

- Advanced Message Queueing Protocol

- Messaging Broker

- Network Protocol

- Platform Agnostic

- Port 5672

Page 6: Utilizando Filas com PHP

Advantages

Page 7: Utilizando Filas com PHP

- Get data from a to b

- Asynchronous

- Load balance and scalability

- System integrations

- Retry

Page 8: Utilizando Filas com PHP

Model

Page 9: Utilizando Filas com PHP

Publisher ConsumerExchange QueueRoutes ConsumesPublish

Page 10: Utilizando Filas com PHP

Components

Page 11: Utilizando Filas com PHP

- Exchanges

- Message Queues

- Bindings

- Channel

- Virtual Host

Page 12: Utilizando Filas com PHP

Exchange

Page 13: Utilizando Filas com PHP

- Routing agent

- Binding

- Routing key

Page 14: Utilizando Filas com PHP

- Direct exchange

- Fanout exchange

- Topic exchange

- Headers exchange

Page 15: Utilizando Filas com PHP

Exchange

Queue 1

routing_key: key1

Queue 2

Queue 3

routing_key: key2

routing_key: key3

Direct

Page 16: Utilizando Filas com PHP

Exchange

Queue 1

Queue 2

Queue 3

Fanout

Page 17: Utilizando Filas com PHP

Exchange

Queue 1

routing_key: app1.upload

Queue 2routing_key: *.download

routing_key: #.download

Topic

Page 18: Utilizando Filas com PHP

- Headers

- Slower

- More than one criteria for forwarding

Page 19: Utilizando Filas com PHP

Queue

Page 20: Utilizando Filas com PHP

- Durable or Temporary (server shutdown)

- Fifo?

- Dead letter

- Named by client or Server

- reply_to

Page 21: Utilizando Filas com PHP

Bindings

Page 22: Utilizando Filas com PHP

- Relationship

- Queue X Exchange X Virtual Host

Page 23: Utilizando Filas com PHP

Channel

Page 24: Utilizando Filas com PHP

- TCP

- SSL

- Lightweight connections that share a single TCP connection

Page 25: Utilizando Filas com PHP

Virtual Host

Page 26: Utilizando Filas com PHP

- /virtual_host

- Queue/exchange groups

Page 27: Utilizando Filas com PHP

Producer

Page 28: Utilizando Filas com PHP

- Batch

- Send message to an exchange

Page 29: Utilizando Filas com PHP

Consumer

Page 30: Utilizando Filas com PHP

- basic_ack

- Worker(s)

Page 31: Utilizando Filas com PHP

RabbitMQ

Page 32: Utilizando Filas com PHP

- PECL and Composer

- Easy to install, use and monitor

- Great docs

- Plugins

- Open source and commercially supported

Page 33: Utilizando Filas com PHP

Code

Page 34: Utilizando Filas com PHP

Refs

Page 36: Utilizando Filas com PHP

????

Page 37: Utilizando Filas com PHP

Obrigado!

https://joind.in/talk/2bef6

Visite phpsp.org.br