How New York's MTA Uses Drupal Caching to Get Riders There on Time

Post on 14-Dec-2014

2,368 views 1 download

description

 

transcript

blinkreaction.com #blinkreaction  

How New York’s MTA Uses Drupal Caching to Get Riders There on Time

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 2

Welcome

•  who we are and what we do

•  significance and context

•  project overview

•  project management

•  architecture

•  technology

•  implementation

•  resources

Building Solutions for…

Fortune 500, government & large not-for-profits

Enterprise Training for …

Fortune 500, government & large not-for-profits

Community Training & Support Flattening the Drupal Learning Cliff

blinkreaction.com/training  

The  Ocean  Railway  Stephen  Fox,  Harper  Collins  

“In  the  autumn  of  1817,  the  Thompsons  and  their  three  associates  placed  a  noBce  in  New  York's  newspapers.  In  order  to  furnish  frequent  and  regular  conveyances  for  GOODS  and  PASSENGERS,  they  announced,  the  subscribers  have  undertaken  to  establish  a  line  of  vessels  between  NEW  YORK  and  LIVERPOOL,  to  sail  from  each  place  on  a  certain  day  in  every  month  throughout  the  year.      Thompson  and  his  partners  were  promising  a  daring  combinaBon  of  speed,  comfort  and  predictability  -­‐  qualiBes  previously  unknown  on  the  North  AtlanBc.”      

The  Ocean  Railway  Stephen  Fox,  Harper  Collins  

“In  the  autumn  of  1817,  the  Thompsons  and  their  three  associates  placed  a  noBce  in  New  York's  newspapers.  In  order  to  furnish  frequent  and  regular  conveyances  for  GOODS  and  PASSENGERS,  they  announced,  the  subscribers  have  undertaken  to  establish  a  line  of  vessels  between  NEW  YORK  and  LIVERPOOL,  to  sail  from  each  place  on  a  certain  day  in  every  month  throughout  the  year.      Thompson  and  his  partners  were  promising  a  daring  combinaBon  of  speed,  comfort  and  predictability  -­‐  qualiBes  previously  unknown  on  the  North  AtlanBc.”      

Early  Solu*ons  &  Prototypes  

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 10

THE SUBWAY Requirement Analysis Specifications Information Architecture Wireframing

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 15

1960’s

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 16

1970’s

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 17

1980’s

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 20

Passengers entering the subway system: Average Weekday 2009: 5,086,833 2010: 5,156,913 2011: 5,284,295 Annual Total 2009: 1,579,866,600 2010: 1,604,198,017 2011: 1,640,434,672

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 22

Solution

images: mta.org iconarchive.com drupal.org

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 24

Dashboard & API Key

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 25

Pilot Feeds

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 26

Proactive Coordination

RASCI

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 27

Project Planning

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 28

Implementation at a glance

•  Drupal 7 •  Varnish •  Heavy caching •  Widely used Contributed modules •  5 custom modules •  Permissions open, not moderated •  Dynamic real-time feeds via GTFS binary file •  Static feeds via separate GTFS spec file

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 29

Edge Side Includes or ESI

image from soasta.com

… a small markup language for edge level dynamic web content assembly. The purpose of ESI is to tackle the problem of web infrastructure scaling.[1] It is an application of edge computing.

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 30

Varnish version 3.03

image from soasta.com

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 31

Line feeds portal architecture

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 32

SOASTA Distributed Load Testing

image from soasta.com

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 33

SOASTA Distributed Load Testing

image from soasta.com

5,000 users per second!

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 34

The Demo ‘App’

Easy •  standalone Drupal 7 Site •  mobile web theme specifically for iPhone •  admin menu, ctools, devel, features, job

scheduler, memcache, strong arm, shield Not that Easy No php parser for gtfs files - edited drslump library - built for php 5.3 using namespaces - tweeks to make it work on 5.2

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 35

General Transit Feed Spec - Realtime

image from soasta.com

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 36

mtadeveloperresources

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 37

Q&A

Property of Blink Reaction • CONFIDENTIAL • Do not distribute without permission. 38

Thank You. blinkreaction.com

732.792.6566

ray.saltini@blinkreaction.com

evgeniy.kashchenko@blinkreaction.com

twitter: @blinkreaction

facebook.com/blinkreaction