Upgrade to Pro — share decks privately, control downloads, hide ads and more …

From 30rpm to 1980rps

From 30rpm to 1980rps

How did we change the mindset of a team that used to work an absurd legacy code. Recently, they rewrote a software into a new one able to process 1980 requests per second.

Miere Liniel Teixeira

November 20, 2014
Tweet

More Decks by Miere Liniel Teixeira

Other Decks in Technology

Transcript

  1. Original Software • COBOL based business logic and storage •

    External access to information through a socket server written in C • Totally un-modular • Hundreds of thousands of IF-ELSE's Lines of Code • 0% Code Coverage
  2. Original Software performance • Not scalable • 30 RPM •

    20MB ~ 100% RAM usage • 15% CPU usage • a bug makes log file grown about a 1GB per minute
  3. Why should it be rewritten? • Original C socket server

    "works luckily" • Several performance issues • Several customization points avoid new customizations to be developed in affordable time
  4. Why should it be rewritten? • There was one (SEVERE)

    bug that appears randomly under production once in a while • There was a new project soon that will bring new customizations
  5. New software • COBOL based business logic and storage •

    Java multi-protocol Server • Modular customizations • Orthogonal customizations
  6. New software performance • Vertically/Horizontally scalable • 1980 RPS (

    due to a limitation on COBOL piped communication ) • 85% code coverage