SlideShare a Scribd company logo
1 of 27
www.aol.comMigrating a Flagship Product from a Proprietary Web Platform to Open Source Mandi Walls Velocity 2009
Agenda Evolution of a flagship site The old platform:  “AOL Dynamic Platform” The new platform:  “Dynapub” Growing pains Knowledge migration
Evolution of www.aol.com You might have seen it before. AOL’s main home page Links to various internal and partner sites Runs Netscape, Latino, Mexico portals, as well as partner co-brands Also the in-client “Welcome Screen” with a slightly different look and feel It’s the same page, 55M times a day!
AOL.com - 1996
AOL.com 2.0 - 2005
AOL.com 3.0 - 2007
AOL.com 4.0 – 2008 AOL gets to Web 2.0
Monthly Pageviews – From April 2005
The AOL Dynamic Platform The Old Platform - ADP
AOL.com ADP Architecture
ADP AOLserver on every layer Internally developed and maintained Historically related to DigitalCity, 10 years of continuous new development Proprietary point to point, permanently connected communications 90% of the data transient in RAM N-tier Configuration in TCL! Multiple frontend farms shared all infrastructure Optimized for real time publishing with caching Still handling millions of hits a day after large migration efforts Scaled at 45hps per server instance
Proprietary Systems: Pros / Cons Good stuff The person who wrote it might sit down the hall I can write my own extensions No licensing Shoot me The person who wrote it left the company years ago I have to write my own extensions Google can’t help me with this problem… Hard to apply new ideas evolved in the industry.
The New Environment Dynapub
Dynapub Architecture for AOL.com
Features of AOL.com’s New Architecture Standalone environment Fewer internally developed systems Standard connectivity over HTTP Hides fewer flaws Requires more technical how-to from development
Growing pains Re-learning How to Scale
Scaling the Application Layer
Lessons Learned – Migration Process One size fits most Proprietary platforms hide many sins Learning curve on new tech is frustrating The customers aren’t always going to like it Easy to get in a hurry and lose time
Managing Architectural Complexity Some things did get more complicated than they needed to be Just because you *can* do something, doesn’t mean you should There are a lot more things to look at, and for our team to be responsible for than on the old platform
Knowledge Migration Learning the New Environment
Bringing Knowledge Forward
Metrics and Monitoring Metrics collection through access logs – we have tools for that Standard formats, universal meaning All-HTTP communications simplifies monitoring Techs at every level can tell when a component has failed
Managing the People Resources Important to not leave anyone behind on the old stuff Everyone wants to work on the new cool thing Applies to development, QA, operations Challenge is to create a broad range of knowledge about the new platform without wiping everyone’s brain of the old platform
What’s Next
Future of AOL.com Continues to be a key part of AOL’s web strategy International components Refreshing the page design  Business focus on revenue and UVs Closer integration with other core AOL products means more opportunities for developers to get large scale experience
Conclusion Positive and negative aspects of a platform migration Retraining is key, but so is remembering the characteristics of the product Huge cultural shift at AOL
Q&A

More Related Content

Similar to Walls Velocity2009

System Development Life Cycle
System Development Life CycleSystem Development Life Cycle
System Development Life Cyclesourav verma
 
IT Modernization For Process Modernization
IT Modernization For Process ModernizationIT Modernization For Process Modernization
IT Modernization For Process ModernizationDheeraj Remella
 
Perficient PepsiCo Rich Internet Apps Seminar
Perficient PepsiCo Rich Internet Apps SeminarPerficient PepsiCo Rich Internet Apps Seminar
Perficient PepsiCo Rich Internet Apps SeminarPerficient, Inc.
 
Exploring the World of Full-Stack Web Development.pdf
Exploring the World of Full-Stack Web Development.pdfExploring the World of Full-Stack Web Development.pdf
Exploring the World of Full-Stack Web Development.pdfEllocent Labs
 
What Makes Dot Net Framework Better for Business Application Development.pptx
What Makes Dot Net Framework Better for Business Application Development.pptxWhat Makes Dot Net Framework Better for Business Application Development.pptx
What Makes Dot Net Framework Better for Business Application Development.pptxSaniyaSharma28
 
Alfresco WCM Case Study: National Academy of Sciences
Alfresco WCM Case Study: National Academy of SciencesAlfresco WCM Case Study: National Academy of Sciences
Alfresco WCM Case Study: National Academy of Sciencesrivetlogic
 
Directions on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_developmentDirections on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_developmentTakeshi Shinmura
 
Streamlining EMC Documentum Web Publisher to Increase Web Author Productivity
Streamlining EMC Documentum Web Publisher to Increase Web Author ProductivityStreamlining EMC Documentum Web Publisher to Increase Web Author Productivity
Streamlining EMC Documentum Web Publisher to Increase Web Author ProductivityBlueFish
 
Offshore Software Development Company
Offshore Software Development CompanyOffshore Software Development Company
Offshore Software Development CompanyIweballey
 
Documentation of Online jobs for BCA last sem on PHP.
Documentation of Online jobs for BCA last sem on PHP.Documentation of Online jobs for BCA last sem on PHP.
Documentation of Online jobs for BCA last sem on PHP.Harsh Tamakuwala
 
Zend php mobile and right scale rightscale compute 2013
Zend php mobile and right scale   rightscale compute 2013Zend php mobile and right scale   rightscale compute 2013
Zend php mobile and right scale rightscale compute 2013RightScale
 
The CMS of the Future
The CMS of the FutureThe CMS of the Future
The CMS of the FuturePeter Czech
 
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0minseok kim
 
Abstracting the UI Layer for WebSphere Portal
Abstracting the UI Layer for WebSphere PortalAbstracting the UI Layer for WebSphere Portal
Abstracting the UI Layer for WebSphere PortalPerficient, Inc.
 
Intro to FFW and Drupal
 Intro to FFW and Drupal Intro to FFW and Drupal
Intro to FFW and DrupalBrent Bice
 
Status update: Axiell Roadmap/ New features
Status update: Axiell Roadmap/ New featuresStatus update: Axiell Roadmap/ New features
Status update: Axiell Roadmap/ New featuresAxiell ALM
 
[Social innovation challenge][pitching]
[Social innovation challenge][pitching][Social innovation challenge][pitching]
[Social innovation challenge][pitching]Ann Lam
 

Similar to Walls Velocity2009 (20)

System Development Life Cycle
System Development Life CycleSystem Development Life Cycle
System Development Life Cycle
 
IT Modernization For Process Modernization
IT Modernization For Process ModernizationIT Modernization For Process Modernization
IT Modernization For Process Modernization
 
Perficient PepsiCo Rich Internet Apps Seminar
Perficient PepsiCo Rich Internet Apps SeminarPerficient PepsiCo Rich Internet Apps Seminar
Perficient PepsiCo Rich Internet Apps Seminar
 
GenericFrame Technology
GenericFrame TechnologyGenericFrame Technology
GenericFrame Technology
 
Exploring the World of Full-Stack Web Development.pdf
Exploring the World of Full-Stack Web Development.pdfExploring the World of Full-Stack Web Development.pdf
Exploring the World of Full-Stack Web Development.pdf
 
What Makes Dot Net Framework Better for Business Application Development.pptx
What Makes Dot Net Framework Better for Business Application Development.pptxWhat Makes Dot Net Framework Better for Business Application Development.pptx
What Makes Dot Net Framework Better for Business Application Development.pptx
 
Alfresco WCM Case Study: National Academy of Sciences
Alfresco WCM Case Study: National Academy of SciencesAlfresco WCM Case Study: National Academy of Sciences
Alfresco WCM Case Study: National Academy of Sciences
 
Directions on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_developmentDirections on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_development
 
Streamlining EMC Documentum Web Publisher to Increase Web Author Productivity
Streamlining EMC Documentum Web Publisher to Increase Web Author ProductivityStreamlining EMC Documentum Web Publisher to Increase Web Author Productivity
Streamlining EMC Documentum Web Publisher to Increase Web Author Productivity
 
Offshore Software Development Company
Offshore Software Development CompanyOffshore Software Development Company
Offshore Software Development Company
 
Drupal Capabilities @ Neev
Drupal Capabilities @ NeevDrupal Capabilities @ Neev
Drupal Capabilities @ Neev
 
Documentation of Online jobs for BCA last sem on PHP.
Documentation of Online jobs for BCA last sem on PHP.Documentation of Online jobs for BCA last sem on PHP.
Documentation of Online jobs for BCA last sem on PHP.
 
Zend php mobile and right scale rightscale compute 2013
Zend php mobile and right scale   rightscale compute 2013Zend php mobile and right scale   rightscale compute 2013
Zend php mobile and right scale rightscale compute 2013
 
The CMS of the Future
The CMS of the FutureThe CMS of the Future
The CMS of the Future
 
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
 
Abstracting the UI Layer for WebSphere Portal
Abstracting the UI Layer for WebSphere PortalAbstracting the UI Layer for WebSphere Portal
Abstracting the UI Layer for WebSphere Portal
 
Intro to FFW and Drupal
 Intro to FFW and Drupal Intro to FFW and Drupal
Intro to FFW and Drupal
 
Status update: Axiell Roadmap/ New features
Status update: Axiell Roadmap/ New featuresStatus update: Axiell Roadmap/ New features
Status update: Axiell Roadmap/ New features
 
[Social innovation challenge][pitching]
[Social innovation challenge][pitching][Social innovation challenge][pitching]
[Social innovation challenge][pitching]
 
.Net @ Neev
.Net @ Neev.Net @ Neev
.Net @ Neev
 

More from Mandi Walls

DOD Raleigh Gamedays with Chaos Engineering.pdf
DOD Raleigh Gamedays with Chaos Engineering.pdfDOD Raleigh Gamedays with Chaos Engineering.pdf
DOD Raleigh Gamedays with Chaos Engineering.pdfMandi Walls
 
Addo reducing trauma in organizations with SLOs and chaos engineering
Addo  reducing trauma in organizations with SLOs and chaos engineeringAddo  reducing trauma in organizations with SLOs and chaos engineering
Addo reducing trauma in organizations with SLOs and chaos engineeringMandi Walls
 
Full Service Ownership
Full Service OwnershipFull Service Ownership
Full Service OwnershipMandi Walls
 
PagerDuty: Best Practices for On Call Teams
PagerDuty: Best Practices for On Call TeamsPagerDuty: Best Practices for On Call Teams
PagerDuty: Best Practices for On Call TeamsMandi Walls
 
InSpec at DevOps ATL Meetup January 22, 2020
InSpec at DevOps ATL Meetup January 22, 2020InSpec at DevOps ATL Meetup January 22, 2020
InSpec at DevOps ATL Meetup January 22, 2020Mandi Walls
 
Prescriptive Security with InSpec - All Things Open 2019
Prescriptive Security with InSpec - All Things Open 2019Prescriptive Security with InSpec - All Things Open 2019
Prescriptive Security with InSpec - All Things Open 2019Mandi Walls
 
Using Chef InSpec for Infrastructure Security
Using Chef InSpec for Infrastructure SecurityUsing Chef InSpec for Infrastructure Security
Using Chef InSpec for Infrastructure SecurityMandi Walls
 
Adding Security to Your Workflow With InSpec - SCaLE17x
Adding Security to Your Workflow With InSpec - SCaLE17xAdding Security to Your Workflow With InSpec - SCaLE17x
Adding Security to Your Workflow With InSpec - SCaLE17xMandi Walls
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Mandi Walls
 
BuildStuff.LT 2018 InSpec Workshop
BuildStuff.LT 2018 InSpec WorkshopBuildStuff.LT 2018 InSpec Workshop
BuildStuff.LT 2018 InSpec WorkshopMandi Walls
 
InSpec Workshop at Velocity London 2018
InSpec Workshop at Velocity London 2018InSpec Workshop at Velocity London 2018
InSpec Workshop at Velocity London 2018Mandi Walls
 
DevOpsDays InSpec Workshop
DevOpsDays InSpec WorkshopDevOpsDays InSpec Workshop
DevOpsDays InSpec WorkshopMandi Walls
 
Adding Security and Compliance to Your Workflow with InSpec
Adding Security and Compliance to Your Workflow with InSpecAdding Security and Compliance to Your Workflow with InSpec
Adding Security and Compliance to Your Workflow with InSpecMandi Walls
 
InSpec - June 2018 at Open28.be
InSpec - June 2018 at Open28.beInSpec - June 2018 at Open28.be
InSpec - June 2018 at Open28.beMandi Walls
 
habitat at docker bud
habitat at docker budhabitat at docker bud
habitat at docker budMandi Walls
 
Ingite Slides for InSpec
Ingite Slides for InSpecIngite Slides for InSpec
Ingite Slides for InSpecMandi Walls
 
Habitat at LinuxLab IT
Habitat at LinuxLab ITHabitat at LinuxLab IT
Habitat at LinuxLab ITMandi Walls
 
InSpec Workshop DevSecCon 2017
InSpec Workshop DevSecCon 2017InSpec Workshop DevSecCon 2017
InSpec Workshop DevSecCon 2017Mandi Walls
 
Habitat Workshop at Velocity London 2017
Habitat Workshop at Velocity London 2017Habitat Workshop at Velocity London 2017
Habitat Workshop at Velocity London 2017Mandi Walls
 
InSpec Workflow for DevOpsDays Riga 2017
InSpec Workflow for DevOpsDays Riga 2017InSpec Workflow for DevOpsDays Riga 2017
InSpec Workflow for DevOpsDays Riga 2017Mandi Walls
 

More from Mandi Walls (20)

DOD Raleigh Gamedays with Chaos Engineering.pdf
DOD Raleigh Gamedays with Chaos Engineering.pdfDOD Raleigh Gamedays with Chaos Engineering.pdf
DOD Raleigh Gamedays with Chaos Engineering.pdf
 
Addo reducing trauma in organizations with SLOs and chaos engineering
Addo  reducing trauma in organizations with SLOs and chaos engineeringAddo  reducing trauma in organizations with SLOs and chaos engineering
Addo reducing trauma in organizations with SLOs and chaos engineering
 
Full Service Ownership
Full Service OwnershipFull Service Ownership
Full Service Ownership
 
PagerDuty: Best Practices for On Call Teams
PagerDuty: Best Practices for On Call TeamsPagerDuty: Best Practices for On Call Teams
PagerDuty: Best Practices for On Call Teams
 
InSpec at DevOps ATL Meetup January 22, 2020
InSpec at DevOps ATL Meetup January 22, 2020InSpec at DevOps ATL Meetup January 22, 2020
InSpec at DevOps ATL Meetup January 22, 2020
 
Prescriptive Security with InSpec - All Things Open 2019
Prescriptive Security with InSpec - All Things Open 2019Prescriptive Security with InSpec - All Things Open 2019
Prescriptive Security with InSpec - All Things Open 2019
 
Using Chef InSpec for Infrastructure Security
Using Chef InSpec for Infrastructure SecurityUsing Chef InSpec for Infrastructure Security
Using Chef InSpec for Infrastructure Security
 
Adding Security to Your Workflow With InSpec - SCaLE17x
Adding Security to Your Workflow With InSpec - SCaLE17xAdding Security to Your Workflow With InSpec - SCaLE17x
Adding Security to Your Workflow With InSpec - SCaLE17x
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
 
BuildStuff.LT 2018 InSpec Workshop
BuildStuff.LT 2018 InSpec WorkshopBuildStuff.LT 2018 InSpec Workshop
BuildStuff.LT 2018 InSpec Workshop
 
InSpec Workshop at Velocity London 2018
InSpec Workshop at Velocity London 2018InSpec Workshop at Velocity London 2018
InSpec Workshop at Velocity London 2018
 
DevOpsDays InSpec Workshop
DevOpsDays InSpec WorkshopDevOpsDays InSpec Workshop
DevOpsDays InSpec Workshop
 
Adding Security and Compliance to Your Workflow with InSpec
Adding Security and Compliance to Your Workflow with InSpecAdding Security and Compliance to Your Workflow with InSpec
Adding Security and Compliance to Your Workflow with InSpec
 
InSpec - June 2018 at Open28.be
InSpec - June 2018 at Open28.beInSpec - June 2018 at Open28.be
InSpec - June 2018 at Open28.be
 
habitat at docker bud
habitat at docker budhabitat at docker bud
habitat at docker bud
 
Ingite Slides for InSpec
Ingite Slides for InSpecIngite Slides for InSpec
Ingite Slides for InSpec
 
Habitat at LinuxLab IT
Habitat at LinuxLab ITHabitat at LinuxLab IT
Habitat at LinuxLab IT
 
InSpec Workshop DevSecCon 2017
InSpec Workshop DevSecCon 2017InSpec Workshop DevSecCon 2017
InSpec Workshop DevSecCon 2017
 
Habitat Workshop at Velocity London 2017
Habitat Workshop at Velocity London 2017Habitat Workshop at Velocity London 2017
Habitat Workshop at Velocity London 2017
 
InSpec Workflow for DevOpsDays Riga 2017
InSpec Workflow for DevOpsDays Riga 2017InSpec Workflow for DevOpsDays Riga 2017
InSpec Workflow for DevOpsDays Riga 2017
 

Recently uploaded

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 

Recently uploaded (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Walls Velocity2009

  • 1. www.aol.comMigrating a Flagship Product from a Proprietary Web Platform to Open Source Mandi Walls Velocity 2009
  • 2. Agenda Evolution of a flagship site The old platform: “AOL Dynamic Platform” The new platform: “Dynapub” Growing pains Knowledge migration
  • 3. Evolution of www.aol.com You might have seen it before. AOL’s main home page Links to various internal and partner sites Runs Netscape, Latino, Mexico portals, as well as partner co-brands Also the in-client “Welcome Screen” with a slightly different look and feel It’s the same page, 55M times a day!
  • 7. AOL.com 4.0 – 2008 AOL gets to Web 2.0
  • 8. Monthly Pageviews – From April 2005
  • 9. The AOL Dynamic Platform The Old Platform - ADP
  • 11. ADP AOLserver on every layer Internally developed and maintained Historically related to DigitalCity, 10 years of continuous new development Proprietary point to point, permanently connected communications 90% of the data transient in RAM N-tier Configuration in TCL! Multiple frontend farms shared all infrastructure Optimized for real time publishing with caching Still handling millions of hits a day after large migration efforts Scaled at 45hps per server instance
  • 12. Proprietary Systems: Pros / Cons Good stuff The person who wrote it might sit down the hall I can write my own extensions No licensing Shoot me The person who wrote it left the company years ago I have to write my own extensions Google can’t help me with this problem… Hard to apply new ideas evolved in the industry.
  • 15. Features of AOL.com’s New Architecture Standalone environment Fewer internally developed systems Standard connectivity over HTTP Hides fewer flaws Requires more technical how-to from development
  • 18. Lessons Learned – Migration Process One size fits most Proprietary platforms hide many sins Learning curve on new tech is frustrating The customers aren’t always going to like it Easy to get in a hurry and lose time
  • 19. Managing Architectural Complexity Some things did get more complicated than they needed to be Just because you *can* do something, doesn’t mean you should There are a lot more things to look at, and for our team to be responsible for than on the old platform
  • 20. Knowledge Migration Learning the New Environment
  • 22. Metrics and Monitoring Metrics collection through access logs – we have tools for that Standard formats, universal meaning All-HTTP communications simplifies monitoring Techs at every level can tell when a component has failed
  • 23. Managing the People Resources Important to not leave anyone behind on the old stuff Everyone wants to work on the new cool thing Applies to development, QA, operations Challenge is to create a broad range of knowledge about the new platform without wiping everyone’s brain of the old platform
  • 25. Future of AOL.com Continues to be a key part of AOL’s web strategy International components Refreshing the page design Business focus on revenue and UVs Closer integration with other core AOL products means more opportunities for developers to get large scale experience
  • 26. Conclusion Positive and negative aspects of a platform migration Retraining is key, but so is remembering the characteristics of the product Huge cultural shift at AOL
  • 27. Q&A

Editor's Notes

  1. Few products reflect the direction of a company the way AOL.com has been changed to reflect the evolution of AOL’s core business. Early examples of www.aol.com available in the Internet Archive are examples of how the site was used to attract customers to AOL’s ISP business. For a number of years, the portal was also “AOL Anywhere”, a companion to the client-based ISP system. In the past several years it has been refocused as a web portal and the push to advertise the ISP products has all but completely disappeared from the main site.
  2. Courtesy of the Wayback Machine, aol.com in 1996. Focused on selling the original access products, getting people interested in AOL’s walled garden experience. The portal went through several years of being “AOL Anywhere”, secondary to the AOL client experience and dialup connectivity.
  3. The first release on ADP, July 2005. Migrated from another internally developed publishing platform, Shark, with AOLserver frontends. Introduction of the Video Portal. This version almost ended up on another proprietary platform based on a “web” server that didn’t implement most of HTTP. Frontends on Linux, and eventually the middleware was migrated as well.
  4. The design of the site for the last version to run on ADP, Welcome Screen version. The version famous for looking like Yahoo! at that time. The second major release on the ADP platform, there’s no banner or large invitation on the site to download the AOL dial client, but links to AOL software are still above the fold. Much of the page is configurable to the publishers. Content is a mix of programming and ingested feeds. Still some deadended components in the infrastructure – pieces that no one knows how to work on anymore, though nearly all components now run on Linux.
  5. The redesign that came along with the migration. Totally devoted to a web experience, includes various non-AOL web partners, runs real media ads. 100% of the page can change through publishing. The only mention of the AOL Client is at the bottom of the page, under “Services”. The whole environment is based on standard Open Source components and runs on Linux.
  6. A growth in pageviews during the same era. In addition to contending with the limitations of the platforms, we were working on how to accommodate the hits.
  7. Single origin for published data, including much of the objects coming from feeds and partners. The middleware includes index and search, small objects publishing stores, art and static objects, click tracking for metrics and reporting, mail spools for “send to a friend” functionality, databases for music, movies, news. The AOLserver frontends are broken up into farms that serve specific products – AOL.com, the AOL Channels, News, Feeds for Travel and Syndication, Moviefone, Video, etc.
  8. What the architecture really looked like. This diagram was created in 2005.“Other” connectivity can be database replication,rsync, rsync-over-dci, etc. The amount of proprietary and non-portable connections and components made the option of migrating the architecture piecemeal unmanageable. There is little here that could have been used directly without porting core connectivity components to the new platform.The “pub” cloud is one very large and very unhappy V880.
  9. The baseline AOLserver software is C with a TCL interface. The original bits were purchased and then extended over a number of years internally. Of the more idiosyncratic characteristics of the ADP infrastructure, the connectivity was the most single-use piece, developed to completely adhere to AOL’s network standards and creating headaches and topology nightmares.All RPC connections originated with the publishing master, and the master held a complete view of all hosts in the network – as many as 2000 single-function applications at a time, with complex interconnectivity to manage caching and flushing and real-time updates to data and search indexes. The size of the topology and geographical distribution required a multi-tiered connectivity plan, with repeaters localized to the frontend servers to keep the master from being overburdened.Adding insult to this injury, all the configuration was written in TCL. A single misplaced bracket could crash an entire farm of hosts, and if was particularly well-placed, the entire infrastructure.At one point, nearly all of AOL’s web presence was somehow attached to or dependent on this system except for search and the primary components of the webmail system (though webmail used a header that relied on a piece in this).For all the nightmares, the system was fairly fast for what it was doing. 100% of hits to these farms demanded dynamically generated content, so most of the data was held in RAM on the frontends, with very little on disk permanently. The request-on-demand nature of most of the data meant that a cold cache was populated with data as it was needed to create pages. The cache-hit rate on a quiesced server could be anywhere from 90% to 99.9% depending on the farm and types of requests it serviced, even with very little memory devoted to cache (<40MB).However, this memory-intensive storage system meant that on a 32bit system, the servers start to flake out when they reach 2GB of RAM used, and without engineers to build and verify a 64bit build, the system basically obsoleted itself.
  10. Continuing to maintain a proprietary infrastructure for a number of years requires careful management of the people who know all the bits of the system. Losing the primary developer on any component or subsystem can (and often does) mean a slow painful death for that system, regardless of how many products rely on it. Letting politics get in the way of the product lifecycle is particularly fun.Building your infrastructure components from the ground up means building everything yourself. A product needs click-through tracking? Gotta build a system for it. Someone else wants Captcha? Build it yourself. The amount of time and resources necessary to create everything you need from the ground up will put you years behind everyone else (hmm…). While the ADP system eventually had enough basic reusable components to build basic systems, by the time it reached that point most of the original engineers had left and new components or ports of old components were nearly impossible to accomplish.In a proprietary environment, no one on the Internet can hear you scream.
  11. The new environment, called “Dynapub” is based on common Open Source components, including Apache, Tomcat, and MySQL. The basic components of the Dynapub stack can be arranged in any number of ways to provide services as needed by the product, so while any given Dynapub environment contains the same basic building blocks, any two environments aren’t necessarily all that similar.
  12. As opposed to the old architecture, the new systems are largely based on HTTP, and the services run on farms behind load balancers.The databases are all MySQL versus the old flat file PLS databases that supported the ADP architecture.
  13. AOL.com no longer shares components with any of our other sites. The combination of a standalone environment and the open architecture requires more knowledge of how to connect components and make use of resources. In the old environment, all the connectivity was already defined as part of the platform itself and no one really had to fully understand how it worked or how to use it – the abstraction was good, but over time weakened the maintainability and robustness of the whole system.The new system is not without standard practices, but instead of being built on 10 year old assumptions they are based on our actual performance and use of resources.
  14. This graph illustrates the long process of getting to optimum scaling. AOL.com has the opposite problem from a start up project – we had the ability to overbuy hosts to accommodate a worst-case performance level that was well below what we would normally want to have. The slow process of getting to where the apps can actually run reflects the business role the site has. It’s incredibly important to have the site up as much as possible, even if we aren’t trying for five nines anymore. This graph doesn’t show the other metrics we were using to make the scaling decisions, such as memory and CPU utilization, but reflects the effects of decisions based on those metrics. The old code was well understood by not only the operations team but also the dev team. There is more collaborative code in this new environment that has the potential to have significant effects on the overall performance.
  15. At the end of life for the old system, there was little that could be added in the way of modern features. The new system is much more extensible, but still isn’t completely prescriptive for every site that might use it. All the applications will perform differently, and fortunately Operations is now able to scale resources to meet the needs of all the products much more easily.The old system allowed us (Ops) to gloss over what was really going on simply because certain things were “always done that way”. Coming back into an open platform means making sure that anything being redesigned takes into account that there was a reason we use a CDN the way we do, that there are certain benefits and limitations to our networking equipment, and other such things that we were able to handwave on the old platform because it was so ingrained.
  16. Scaling all the individual layers is challenging to keep up with while keeping the site running and working on the number of installations we did during the rollout. Knowing which combinations of threads, children, connections, applications, hosts, etc are required to best serve the traffic without wasting resources takes a concentrated effort.Using the old system as a complexity baseline, the new system is much simpler to understand. The old system was mostly divided between a couple of teams, another trick to hide the overall complexity.
  17. It’s important to keep in mind *why* a particular characteristic was built into the old platform. This graph is an example of one of the main features of the old infrastructure that we added to AOL.com on the new platform. For every page served by Tomcat, there is a series of calls to the publishing system. Originally, there was no caching policy for all Dynapub sites. ADP had a greedy caching system that caught 99.4% of all requests for publishing data for AOL.com pages. During the migration of AOL.com to Dynapub, caching was not originally included, and we started to look at widening the datastore layer. A caching model was launched into the production farm in mid-December when the publishing layer was having trouble dealing with the requests from Tomcat. The frontend was only taking about 20-30% of total traffic at this time. In mid-January some new features were launched without the caching enhancement enabled, and that was fixed.
  18. One of the side-effects of having a totally proprietary environment is needing to come up with some way to monitor everything. AOLserver has a complex set of application monitoring components, not all of which were terribly helpful, but our monitoring system isn’t sophisticated enough to make smart decisions about them. Limited support for AOLserver meant that our new metrics environment never received an AOLserver monitoring module. The cut over to all HTTP communications is a huge win for operations in this migration. HTTP is easy to monitor and easy to collect metrics from. The log formats are well defined and meaningful. Additionally, it’s easier to create alerts and for the NOC to determine if the system is broken.
  19. Finally, this entire experience represents a huge cultural change for AOL, away from creating and maintaining proprietary systems. Unchaining resources from low value-added positions leaves more time for working on innovative projects. While the old infrastructure had many innovative qualities when it was new, continuing to support a comprehensive platform holds people back from new innovative opportunities when externally available components surpass what is available internally.