Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sinatra, Heroku, Redis

Luis Cipriani
Luis CiprianiDirector Software Engineering at Rocket Internet SE
Case Abril:
 Click counter




Luís Cipriani
@lfcipriani (twitter, linkedin, github, ...)
21o. GURU (2012-01-28) - Sao Paulo/Brazil
ME
motivation




     • hard news
     • sites Home must be dynamic
     • knowing what’s hot helps a lot
     • other advantages could be obtained
architecture
architecture




      • triggered with user click on the page
architecture
architecture




          • servers click.js
          • generate metrics dashboard
architecture
architecture




          • clean up referer link list periodically
          • avoid Redis out of memory
architecture
performance




    • ~ 650.000 hits/day (only sites home)
    •17 sites monitored
    • ~ $823 dolars/month
    • 15 heroku dynos handling everything
performance

• GET /click (on average day)
• average: 6.8 ms
• std deviation: 0.03 ms
overall performance
performance




        • GET /dashboard (on average day)
        • average: 4000 ms
        • std deviation: 2.4 ms
        • acceptable by the publishers
process performance




  • continuous deploy
  • few requirements = focus
  • 3 developers working 1 month
  • 2 weeks = initial implementation using Mongo
  • 2 weeks = refactoring to Redis and improving
  dashboard load time
feedback (from emails)


 “A sua ferramenta é o que há de bom.” Edna Dantas (redatora chefe Contigo)



 “Parabéns a você e a sua equipe pelo desenvolvimento desta
 ferramenta. Ela é uma ajuda e tanto no nosso processo de
 publicação e edição do site.” Edna Dantas



 “Nós também estamos viciados no click counter. “ Hoshino (Webmaster
 Veja)
Reformulação Box de Login                         Abril ID

               http://engineering.abril.com.br/




              ?
1 of 17

Recommended

Column oriented database by
Column oriented databaseColumn oriented database
Column oriented databaseKanike Krishna
3.1K views7 slides
8. column oriented databases by
8. column oriented databases8. column oriented databases
8. column oriented databasesFabio Fumarola
8.3K views71 slides
Intro to column stores by
Intro to column storesIntro to column stores
Intro to column storesJustin Swanhart
21.9K views55 slides
Introduction to column oriented databases by
Introduction to column oriented databasesIntroduction to column oriented databases
Introduction to column oriented databasesArangoDB Database
38.1K views34 slides
Hbase: Introduction to column oriented databases by
Hbase: Introduction to column oriented databasesHbase: Introduction to column oriented databases
Hbase: Introduction to column oriented databasesLuis Cipriani
20.3K views15 slides
How Buffer uses Looker to create user targeted emails by
How Buffer uses Looker to create user targeted emailsHow Buffer uses Looker to create user targeted emails
How Buffer uses Looker to create user targeted emailsSunil Sadasivan
530 views14 slides

More Related Content

Similar to Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sinatra, Heroku, Redis

5 Common Mistakes You are Making on your Website by
 5 Common Mistakes You are Making on your Website 5 Common Mistakes You are Making on your Website
5 Common Mistakes You are Making on your WebsiteAcquia
1.9K views39 slides
Reactive Development: Commands, Actors and Events. Oh My!! by
Reactive Development: Commands, Actors and Events.  Oh My!!Reactive Development: Commands, Actors and Events.  Oh My!!
Reactive Development: Commands, Actors and Events. Oh My!!David Hoerster
1.3K views99 slides
Agileand saas davepatterson_armandofox_050813webinar by
Agileand saas davepatterson_armandofox_050813webinarAgileand saas davepatterson_armandofox_050813webinar
Agileand saas davepatterson_armandofox_050813webinarRoberto Jr. Figueroa
635 views65 slides
Shaking hands with the developer: How IT Communications can help you build a ... by
Shaking hands with the developer: How IT Communications can help you build a ...Shaking hands with the developer: How IT Communications can help you build a ...
Shaking hands with the developer: How IT Communications can help you build a ...Sarah Khan
109 views32 slides
Turning Human Capital into High Performance Organizational Capital by
Turning Human Capital into High Performance Organizational CapitalTurning Human Capital into High Performance Organizational Capital
Turning Human Capital into High Performance Organizational CapitalJohn Willis
966 views87 slides
Digital Success Stack for DCBKK 2018 by
Digital Success Stack for DCBKK 2018Digital Success Stack for DCBKK 2018
Digital Success Stack for DCBKK 2018Kyvio
71 views34 slides

Similar to Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sinatra, Heroku, Redis(20)

5 Common Mistakes You are Making on your Website by Acquia
 5 Common Mistakes You are Making on your Website 5 Common Mistakes You are Making on your Website
5 Common Mistakes You are Making on your Website
Acquia1.9K views
Reactive Development: Commands, Actors and Events. Oh My!! by David Hoerster
Reactive Development: Commands, Actors and Events.  Oh My!!Reactive Development: Commands, Actors and Events.  Oh My!!
Reactive Development: Commands, Actors and Events. Oh My!!
David Hoerster1.3K views
Agileand saas davepatterson_armandofox_050813webinar by Roberto Jr. Figueroa
Agileand saas davepatterson_armandofox_050813webinarAgileand saas davepatterson_armandofox_050813webinar
Agileand saas davepatterson_armandofox_050813webinar
Shaking hands with the developer: How IT Communications can help you build a ... by Sarah Khan
Shaking hands with the developer: How IT Communications can help you build a ...Shaking hands with the developer: How IT Communications can help you build a ...
Shaking hands with the developer: How IT Communications can help you build a ...
Sarah Khan109 views
Turning Human Capital into High Performance Organizational Capital by John Willis
Turning Human Capital into High Performance Organizational CapitalTurning Human Capital into High Performance Organizational Capital
Turning Human Capital into High Performance Organizational Capital
John Willis966 views
Digital Success Stack for DCBKK 2018 by Kyvio
Digital Success Stack for DCBKK 2018Digital Success Stack for DCBKK 2018
Digital Success Stack for DCBKK 2018
Kyvio71 views
A modern architecturereview–usingcodereviewtools-ver-3.5 by SSW
A modern architecturereview–usingcodereviewtools-ver-3.5A modern architecturereview–usingcodereviewtools-ver-3.5
A modern architecturereview–usingcodereviewtools-ver-3.5
SSW1.1K views
Store, Extract, Transform, Load, Visualize. Untagged Conference by Ani Lopez
Store, Extract, Transform, Load, Visualize. Untagged ConferenceStore, Extract, Transform, Load, Visualize. Untagged Conference
Store, Extract, Transform, Load, Visualize. Untagged Conference
Ani Lopez737 views
Agile_SDLC_Node.js@Paypal_ppt by Hitesh Kumar
Agile_SDLC_Node.js@Paypal_pptAgile_SDLC_Node.js@Paypal_ppt
Agile_SDLC_Node.js@Paypal_ppt
Hitesh Kumar404 views
DNN-Connect 2019: DNN Horror Stories by Will Strohl
DNN-Connect 2019: DNN Horror StoriesDNN-Connect 2019: DNN Horror Stories
DNN-Connect 2019: DNN Horror Stories
Will Strohl374 views
Crunching the numbers: Open Source Community Metrics by Dawn Foster
Crunching the numbers: Open Source Community MetricsCrunching the numbers: Open Source Community Metrics
Crunching the numbers: Open Source Community Metrics
Dawn Foster338 views
Crunching the numbers: Open Source Community Metrics at OSCON by Dawn Foster
Crunching the numbers: Open Source Community Metrics at OSCONCrunching the numbers: Open Source Community Metrics at OSCON
Crunching the numbers: Open Source Community Metrics at OSCON
Dawn Foster3.1K views
Drupal 8 Initiatives by Angela Byron
Drupal 8 InitiativesDrupal 8 Initiatives
Drupal 8 Initiatives
Angela Byron1.4K views
Using Node and Grunt to create an awesome workflow by Vernon Kesner
Using Node and Grunt to create an awesome workflowUsing Node and Grunt to create an awesome workflow
Using Node and Grunt to create an awesome workflow
Vernon Kesner1.5K views
Framework Enabling End-Users to Maintain Web Applications (ICICWS2015) by Masayuki Nii
Framework Enabling End-Users to Maintain Web Applications (ICICWS2015)Framework Enabling End-Users to Maintain Web Applications (ICICWS2015)
Framework Enabling End-Users to Maintain Web Applications (ICICWS2015)
Masayuki Nii1.3K views
It takes a village: Scaling your vision by Jon Boutelle
It takes a village: Scaling your visionIt takes a village: Scaling your vision
It takes a village: Scaling your vision
Jon Boutelle1.7K views
Continuously Deploying Culture: Scaling Culture at Etsy - Velocity Europe 2012 by Patrick McDonnell
Continuously Deploying Culture: Scaling Culture at Etsy - Velocity Europe 2012Continuously Deploying Culture: Scaling Culture at Etsy - Velocity Europe 2012
Continuously Deploying Culture: Scaling Culture at Etsy - Velocity Europe 2012
Patrick McDonnell19.4K views
Continuously Deploying Culture: Scaling Culture at Etsy - Velocity Europe 2012 by Michael Rembetsy
Continuously Deploying Culture: Scaling Culture at Etsy - Velocity Europe 2012Continuously Deploying Culture: Scaling Culture at Etsy - Velocity Europe 2012
Continuously Deploying Culture: Scaling Culture at Etsy - Velocity Europe 2012
Michael Rembetsy1.9K views
IWMW 1998: Dataweb: Three Worlds Colide by IWMW
IWMW 1998: Dataweb: Three Worlds ColideIWMW 1998: Dataweb: Three Worlds Colide
IWMW 1998: Dataweb: Three Worlds Colide
IWMW 161 views

More from Luis Cipriani

Adventures with Raspberry Pi and Twitter API by
Adventures with Raspberry Pi and Twitter APIAdventures with Raspberry Pi and Twitter API
Adventures with Raspberry Pi and Twitter APILuis Cipriani
887 views33 slides
Capturando o pulso do planeta com as APIs de Streaming do Twitter by
Capturando o pulso do planeta com as APIs de Streaming do TwitterCapturando o pulso do planeta com as APIs de Streaming do Twitter
Capturando o pulso do planeta com as APIs de Streaming do TwitterLuis Cipriani
2.1K views32 slides
Twitter e suas APIs de Streaming - Campus Party Brasil 7 by
Twitter e suas APIs de Streaming - Campus Party Brasil 7Twitter e suas APIs de Streaming - Campus Party Brasil 7
Twitter e suas APIs de Streaming - Campus Party Brasil 7Luis Cipriani
2.4K views23 slides
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupados by
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupadosSegurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupadosLuis Cipriani
4.1K views38 slides
API Caching, why your server needs some rest by
API Caching, why your server needs some restAPI Caching, why your server needs some rest
API Caching, why your server needs some restLuis Cipriani
9.6K views44 slides
Explaining A Programming Model for Context-Aware Applications in Large-Scale ... by
Explaining A Programming Model for Context-Aware Applications in Large-Scale ...Explaining A Programming Model for Context-Aware Applications in Large-Scale ...
Explaining A Programming Model for Context-Aware Applications in Large-Scale ...Luis Cipriani
892 views34 slides

More from Luis Cipriani(10)

Adventures with Raspberry Pi and Twitter API by Luis Cipriani
Adventures with Raspberry Pi and Twitter APIAdventures with Raspberry Pi and Twitter API
Adventures with Raspberry Pi and Twitter API
Luis Cipriani887 views
Capturando o pulso do planeta com as APIs de Streaming do Twitter by Luis Cipriani
Capturando o pulso do planeta com as APIs de Streaming do TwitterCapturando o pulso do planeta com as APIs de Streaming do Twitter
Capturando o pulso do planeta com as APIs de Streaming do Twitter
Luis Cipriani2.1K views
Twitter e suas APIs de Streaming - Campus Party Brasil 7 by Luis Cipriani
Twitter e suas APIs de Streaming - Campus Party Brasil 7Twitter e suas APIs de Streaming - Campus Party Brasil 7
Twitter e suas APIs de Streaming - Campus Party Brasil 7
Luis Cipriani2.4K views
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupados by Luis Cipriani
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupadosSegurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Luis Cipriani4.1K views
API Caching, why your server needs some rest by Luis Cipriani
API Caching, why your server needs some restAPI Caching, why your server needs some rest
API Caching, why your server needs some rest
Luis Cipriani9.6K views
Explaining A Programming Model for Context-Aware Applications in Large-Scale ... by Luis Cipriani
Explaining A Programming Model for Context-Aware Applications in Large-Scale ...Explaining A Programming Model for Context-Aware Applications in Large-Scale ...
Explaining A Programming Model for Context-Aware Applications in Large-Scale ...
Luis Cipriani892 views
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz... by Luis Cipriani
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Luis Cipriani1.8K views
Como um verdadeiro sistema REST funciona: arquitetura e performance na Abril by Luis Cipriani
Como um verdadeiro sistema REST funciona: arquitetura e performance na AbrilComo um verdadeiro sistema REST funciona: arquitetura e performance na Abril
Como um verdadeiro sistema REST funciona: arquitetura e performance na Abril
Luis Cipriani14.7K views
Explaining Semantic Web by Luis Cipriani
Explaining Semantic WebExplaining Semantic Web
Explaining Semantic Web
Luis Cipriani8.3K views
Fearless HTTP requests abuse by Luis Cipriani
Fearless HTTP requests abuseFearless HTTP requests abuse
Fearless HTTP requests abuse
Luis Cipriani3.6K views

Recently uploaded

Redefining the book supply chain: A glimpse into the future - Tech Forum 2023 by
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023BookNet Canada
44 views19 slides
LLMs in Production: Tooling, Process, and Team Structure by
LLMs in Production: Tooling, Process, and Team StructureLLMs in Production: Tooling, Process, and Team Structure
LLMs in Production: Tooling, Process, and Team StructureAggregage
57 views77 slides
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...ShapeBlue
183 views18 slides
Future of AR - Facebook Presentation by
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook PresentationRob McCarty
65 views27 slides
Why and How CloudStack at weSystems - Stephan Bienek - weSystems by
Why and How CloudStack at weSystems - Stephan Bienek - weSystemsWhy and How CloudStack at weSystems - Stephan Bienek - weSystems
Why and How CloudStack at weSystems - Stephan Bienek - weSystemsShapeBlue
247 views13 slides
Optimizing Communication to Optimize Human Behavior - LCBM by
Optimizing Communication to Optimize Human Behavior - LCBMOptimizing Communication to Optimize Human Behavior - LCBM
Optimizing Communication to Optimize Human Behavior - LCBMYaman Kumar
38 views49 slides

Recently uploaded(20)

Redefining the book supply chain: A glimpse into the future - Tech Forum 2023 by BookNet Canada
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
BookNet Canada44 views
LLMs in Production: Tooling, Process, and Team Structure by Aggregage
LLMs in Production: Tooling, Process, and Team StructureLLMs in Production: Tooling, Process, and Team Structure
LLMs in Production: Tooling, Process, and Team Structure
Aggregage57 views
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue183 views
Future of AR - Facebook Presentation by Rob McCarty
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
Rob McCarty65 views
Why and How CloudStack at weSystems - Stephan Bienek - weSystems by ShapeBlue
Why and How CloudStack at weSystems - Stephan Bienek - weSystemsWhy and How CloudStack at weSystems - Stephan Bienek - weSystems
Why and How CloudStack at weSystems - Stephan Bienek - weSystems
ShapeBlue247 views
Optimizing Communication to Optimize Human Behavior - LCBM by Yaman Kumar
Optimizing Communication to Optimize Human Behavior - LCBMOptimizing Communication to Optimize Human Behavior - LCBM
Optimizing Communication to Optimize Human Behavior - LCBM
Yaman Kumar38 views
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P... by ShapeBlue
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
ShapeBlue196 views
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by The Digital Insurer
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...
Business Analyst Series 2023 - Week 4 Session 7 by DianaGray10
Business Analyst Series 2023 -  Week 4 Session 7Business Analyst Series 2023 -  Week 4 Session 7
Business Analyst Series 2023 - Week 4 Session 7
DianaGray10146 views
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R... by ShapeBlue
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
ShapeBlue178 views
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online by ShapeBlue
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
ShapeBlue225 views
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue by ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueWhat’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
ShapeBlue265 views
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ... by ShapeBlue
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
ShapeBlue120 views
"Node.js Development in 2024: trends and tools", Nikita Galkin by Fwdays
"Node.js Development in 2024: trends and tools", Nikita Galkin "Node.js Development in 2024: trends and tools", Nikita Galkin
"Node.js Development in 2024: trends and tools", Nikita Galkin
Fwdays33 views
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit... by ShapeBlue
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
ShapeBlue162 views
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue by ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlueElevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
ShapeBlue224 views
"Package management in monorepos", Zoltan Kochan by Fwdays
"Package management in monorepos", Zoltan Kochan"Package management in monorepos", Zoltan Kochan
"Package management in monorepos", Zoltan Kochan
Fwdays34 views
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... by ShapeBlue
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
ShapeBlue129 views

Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sinatra, Heroku, Redis

  • 1. Case Abril: Click counter Luís Cipriani @lfcipriani (twitter, linkedin, github, ...) 21o. GURU (2012-01-28) - Sao Paulo/Brazil
  • 2. ME
  • 3. motivation • hard news • sites Home must be dynamic • knowing what’s hot helps a lot • other advantages could be obtained
  • 5. architecture • triggered with user click on the page
  • 7. architecture • servers click.js • generate metrics dashboard
  • 9. architecture • clean up referer link list periodically • avoid Redis out of memory
  • 11. performance • ~ 650.000 hits/day (only sites home) •17 sites monitored • ~ $823 dolars/month • 15 heroku dynos handling everything
  • 12. performance • GET /click (on average day) • average: 6.8 ms • std deviation: 0.03 ms
  • 14. performance • GET /dashboard (on average day) • average: 4000 ms • std deviation: 2.4 ms • acceptable by the publishers
  • 15. process performance • continuous deploy • few requirements = focus • 3 developers working 1 month • 2 weeks = initial implementation using Mongo • 2 weeks = refactoring to Redis and improving dashboard load time
  • 16. feedback (from emails) “A sua ferramenta é o que há de bom.” Edna Dantas (redatora chefe Contigo) “Parabéns a você e a sua equipe pelo desenvolvimento desta ferramenta. Ela é uma ajuda e tanto no nosso processo de publicação e edição do site.” Edna Dantas “Nós também estamos viciados no click counter. “ Hoshino (Webmaster Veja)
  • 17. Reformulação Box de Login Abril ID http://engineering.abril.com.br/ ?

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n