View
59
Download
6
Category
Preview:
Citation preview
Acabe com a concorrência! Use EventMachine!
🎉 🎉Lucas Prim, SumOne, 2015
Lucas Prim
We’re hiring!
Vou contar a história do Bilgodson
🚶
Ele tinha um problema.😨
Ele era viciado em globo.com🙀
E era viciado em Tweets sobre o Obama
%&
Mas ele não sabia trocar de tabs no navegador
😧
Ele se sentia frustrado:
Poderia estar perdendo a nova headline da globo.com pra postar em
seu grupo de Whatsapp enquanto olhava para os tweets sobre o Obama
😭
A propósito: O Twitter acha que quem aqui é o
Obama?
Bilgodson conheceu um amigo que programava em Ruby e
falou da sua frustração.
🏃*
E o eu resolvi seu amigo resolveu implementar algo
pra ajudar o Bilgodson.
🎉 🎉
🎉
Usando EventMachine!!!!!!!
😱😱 😱 😱
😱
Bora ver a implementação?
😎😎
–EventMachine GitHub Page
“EventMachine is an event-driven I/O and lightweight concurrency library for Ruby.” 🚶
EM: Key Objectives• Extremely high scalability, performance and
stability for the most demanding production environments.
• An API that eliminates the complexities of high-performance threaded network programming, allowing engineers to concentrate on their application logic.😍 😍 😍
EM: Good For• Scalable event-driven servers. Examples: Thin or Goliath.
• Scalable asynchronous clients for various protocols, RESTful APIs and so on. Examples: em-http-request or amqp gem.
• Efficient network proxies with custom logic. Examples: Proxymachine.
• File and network monitoring tools. Examples: eventmachine-tail and logstash.
😃 😃 😃
Projeto: Tuiterator Tabajara
https://github.com/lucasprim/tuiterator-tabajara
👀
Code Design
Runner
Config
Broker
BaseJob GloboJob
SocketJob
StreamJob
😯
Runner
😉
Runner
😉
Broker
😉
😉
SocketJob
😉
SocketJob
😉
StreamJob
😉
ruby application.rb
🎉 🎉
🎉🎉
🎉
🎉
Como o Bilgodson não saberia abrir o console, temos também
uma client-side page conectando no nosso websocket!
😮
Vamos ver se funciona?
😰
Sistema funcionando!
E o Bilgodson finalmente ficou feliz!
Triste ficaram seus contatos do Whatsapp…
**
***
😃brigads😃n!
We’re hiring!
https://github.com/lucasprim/tuiterator-tabajara
www.slideshare.com/lucasprim
lucas@sumone.com.br
Recommended