slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Best Practices in Developing Hig h Performance Java Applications A Perspective Keynote at Silicon India PowerPoint Presentation
Download Presentation
Best Practices in Developing Hig h Performance Java Applications A Perspective Keynote at Silicon India

Loading in 2 Seconds...

play fullscreen
1 / 17

Best Practices in Developing Hig h Performance Java Applications A Perspective Keynote at Silicon India - PowerPoint PPT Presentation


  • 86 Views
  • Uploaded on

Best Practices in Developing Hig h Performance Java Applications A Perspective Keynote at Silicon India. Rajgopal Kishore Vice President and Global Head of BI & Analytics, HCL Technologies rkishore@hcl.in rkishore9@gmail.com. Agenda. Business Implication of System Performance

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Best Practices in Developing Hig h Performance Java Applications A Perspective Keynote at Silicon India' - dallon


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Best Practices in Developing High Performance Java ApplicationsA PerspectiveKeynote at Silicon India

Rajgopal Kishore

Vice President and Global Head of BI & Analytics,

HCL Technologies

rkishore@hcl.in

rkishore9@gmail.com

agenda
Agenda
  • Business Implication of System Performance
  • Understanding Performance Requirements
  • Sharing Some War Stories
  • Best Practices
business implications of system performance
Business Implications of System Performance
  • We all want a nice user experience
  • We won’t tolerate slow pages (we have options); lesser still any downtime
    • 500 ms slower = 20% drop in traffic (Google)
    • 100 ms slower = 1% drop in sales (Amazon)
  • Slower Warehouse management system – lower warehouse throughput!
  • Any downtime in a trading system - $m lost
what is performance is a subset of nfr
What is Performance? Is a subset of NFR…
  • On-line applications -
    • Response time
    • Maintaining response time with increasing load – scalability
    • Throughput
    • Handles user expectations/frustration
    • Availability
  • Batch applications
    • Runs in the batch window – which is constantly shrinking!
    • Does not slow down other on-line work to an unacceptable level
biggest cause of performance failures
Biggest Cause of Performance Failures..
  • Not understanding performance requirements (implicit, explicit, real, or expectation)
  • Not setting expectations early enough
  • Not understanding and explaining trade-offs between performance and $ (infrastructure), and time
performance requirements capture sample
Performance Requirements Capture – Sample
  • The application will be optimized for high throughput. Traffic is to be tested for 250 concurrent users and 24/7 operations
  • All simple transactions will have a response time of less than 5 seconds. Complex transactions will have a response time of 15 seconds
  • The response time of all the pages would be less than 3 seconds
consequently
Consequently …
  • Performance requirements captured are insubstantial; Work pattern and user behavior is not understood
  • Infrastructure is suggested with out any basis
  • No performance benchmarking done till the system integration phase of the project
  • Benchmarking goals are not defined
what are performance requirements multiple dimensions
What are Performance Requirements? - Multiple dimensions
  • Infrastructure model
    • Boxes, routers, IP splitters, CPUs, RAM, bandwidth
  • Transaction model
    • Transaction arrivals rates, think time, variation across the day
  • External transaction model
    • Any messages, file uploads
  • Data retention model
    • # years, hot, warm and cold areas, read-only or read-write
deathcare major in the us
Deathcare Major in the US …
  • 15000 users
  • Complex application
  • Low bandwidth network – 128K
  • 7 seconds response time needs – set after a discussion
major retailer
Major Retailer …
  • Large and complex application for assortment planning
  • Board level visibility
large fashion retailer
Large fashion Retailer…
  • Big brand
  • Wanted a 2 second response time for a planning application
at a mid size telecom company
At a mid size Telecom company…
  • Need to “validate” capacity plan of their boxes for a MLM solution roll-out
summarizing some best practices in development high performance apps

Summarizing Some Best Practices in development high performance apps…

What you will not get on the Internet

best practices
Best Practices …
  • Understand, set and control expectations.
  • Always attempt to understand real business need as opposed to articulated performance requirements
  • Big picture first – infrastructure capacity planning
  • Then optimize the application – create an app where the only bottleneck is the infrastructure …
best practices1
Best Practices …
  • Abstraction is not good for performance …. Including Virtualization!!!
  • Do not use the same APIS for batch and on-line programs
  • Early stage performance prototyping….