Performance

Performance - Front-end
Performance - Back-end

Friendster

http://www.bigdbahead.com/

https://www.youtube.com/watch?v=aSVH2fDY_7Y

http://www.appedo.com/posts/a-simple-and-practical-performance-tuning-approach
https://www.sitepoint.com/how-to-improve-page-performance-and-make-the-most-of-your-hosting/
http://www.yottaa.com/company/blog/application-optimization/10411/
http://www.sitepoint.com/saving-bandwidth-with-chromes-data-saver
https://gooroo.io/GoorooTHINK/Article/16623/One-Weird-Trick-To-Improve-Web-Performance/21564
http://www.theregister.co.uk/2016/04/20/hybrid_infrastructure_blog/
https://www.soasta.com/blog/how-to-interpret-report-performance-test-results/
http://blog.catchpoint.com/2016/05/05/http2-google-akamai-cloudflare/
http://infrequently.org/2016/05/service-workers-and-pwas-its-about-reliable-performance-not-offline/
https://opensource.com/life/16/2/lightning-talk-kubernetes-intro
http://blogs.aws.amazon.com/security/post/Tx3VP208IBVASUQ/How-to-Control-Access-to-Your-Amazon-Elasticsearch-Service-Domain
http://www.devopsdigest.com/30-devops-tools-1
https://labs.spotify.com/2016/03/25/managing-machines-at-spotify/
https://blog.fabric8.io/not-using-docker-f7a4d0035c71
https://www.oreilly.com/ideas/what-is-sre-site-reliability-engineering

https://player.oreilly.com/videos/9781491943588
http://community.sitepoint.com/t/leverage-browser-caching/174885/2
https://github.com/newsapps/beeswithmachineguns
http://perf.fail/
http://www.perf.rocks/
http://perf-tooling.today/
http://jankfree.org/
http://www.sitepoint.com/tools-testing-website-performance/
http://www.sitepoint.com/how-make-blog-load-560ms
http://blog.catchpoint.com/2014/10/27/performance-measurement-issues
http://blog.limelight.com/2014/08/delivering-zero-rated-traffic/
http://blog.streamingmedia.com/2014/09/why-apples-livestream-failed.html
http://zoompf.com/blog/2014/09/a-new-way-to-justify-your-ongoing-performance-improvement-efforts
http://www.sitepoint.com/speed-index-measuring-page-load-time-different-way
https://blog.thousandeyes.com/time-warner-cable-outage/
http://www.fastly.com/blog/caching-dynamic-content/
http://www.performancebydesign.co.uk/test-for-performance-early-and-with-realistic-data-in-agile
https://cdnify.com/blog/top-10-gulp-tasks-for-optimising-front-end-performance/
http://radar.oreilly.com/2014/08/4-steps-to-a-culture-of-performance.html
http://msdn.microsoft.com/en-us/library/gg699341(v=vs.85).aspx
http://ajax.dynatrace.com/ajax/en/
http://code.google.com/webtoolkit/speedtracer/
http://www.youtube.com/watch?v=Sn_3rJaexKc
http://michaelsync.net/2007/09/10/firebugtutorial-logging-profiling-and-commandline-part-ii

http://www.sitepoint.com/speed-wordpress
http://www.sitepoint.com/stress-test-php-app-apachebench
http://timkadlec.com/2014/05/performance-budgeting-with-grunt/
http://www.datacenterknowledge.com/archives/2014/06/23/some-data-center-downtime-causes-unpredictable-10-strangest-ones
https://www.youtube.com/playlist?list=PL055Epbe6d5aC6OQSRlkYCv7bu-5bc_Is
http://velocityconf.com/velocity2014/public/schedule/proceedings
https://www.youtube.com/playlist?list=PL055Epbe6d5aFXqs5UPAyQxs3D-1tHVCy
http://www.webperformancetoday.com/2014/05/14/expert-talks-web-performance
http://www.yottaa.com/blog/order-is-everything-5-steps-to-an-engaging-mobile-experience
https://developers.google.com/speed/docs/best-practices/rtt
http://www.webperformancetoday.com/2014/05/08/every-second-counts-user-experience-video/
http://www.performancebydesign.co.uk/performant-code-for-business/
https://blogs.akamai.com/2014/05/and-you-thought-your-page-could-not-be-cached.html
http://alistapart.com/blog/post/network-performance-testing/
http://www.quirksmode.org/blog/archives/2014/04/suppressing_the.html
http://www.jonathanklein.net/2013/12/reducing-domain-sharding.html
http://www.showslow.com/blog/measuring-web-performance-using-google-spreadsheets/
http://www.igvita.com/2013/11/27/configuring-and-optimizing-websocket-compression/
http://www.slideshare.net/danmil30/how-to-run-a-postmortem-with-humans-not-robots-velocity-2013
http://www.mobify.com/insights/black-friday-cyber-monday-2013
http://blog.smartbear.com/news/cyber-monday-2013-recap-infographic
http://www.intomobile.com/2013/12/03/motorola-adds-deals-extends-349-moto-x-cyber-monday-deal-due-website-problems/
http://nickcraver.com/blog/2013/11/22/what-it-takes-to-run-stack-overflow/
http://calendar.perfplanet.com/2013/why-is-the-web-so-slow/
http://docs.webplatform.org/wiki/concepts/performance
http://blog.smartbear.com/web-performance/smartbears-cyber-monday-web-performance-checklist
http://www.strangeloopnetworks.com/blog/black-friday-and-cyber-monday-web-performance-snapshot/
http://theshipshow.com/2013/11/getting-into-flowcon-with-gene-kim-and-jez-humble/
http://www.lukew.com/ff/entry.asp?1822
http://www.sitepoint.com/website-usability-page-speed-birds-feather
http://andydavies.me/blog/2013/10/22/how-the-browser-pre-loader-makes-pages-load-faster/
http://www.slideshare.net/AndyDavies/web-perfdays-ams
http://programming.oreilly.com/2013/10/measuring-mobile-performance.html
http://www.webperformancetoday.com/2013/10/09/are-top-vc-backed-web-sites-getting-slower/
http://alistapart.com/column/performance-matters
http://mervine.net/projects/gems/autoperf
http://codeascraft.com/2013/09/28/nagios-sleep-data-and-you/
http://laraswanson.com/mobileweb/
http://programming.oreilly.com/2013/09/building-an-alerting-system-that-really-works.html
http://www.sitepoint.com/redesigning-sitepoint-caching-speed/
https://blog.twitter.com/2011/twitter-search-now-3x-faster
http://www.webperfdays.org/
http://jakearchibald.com/2013/solving-rendering-perf-puzzles/
http://chimera.labs.oreilly.com/books/1230000000545/index.html
http://programming.oreilly.com/2013/07/caching-strategies-for-improved-web-performance.html
http://www.smashingmagazine.com/2013/06/11/front-end-ops/
http://codeascraft.com/2013/07/11/june-2013-site-performance-report
http://www.ibm.com/developerworks/opensource/library/a-devops10/index.html
http://www.igvita.com/2013/06/20/http-archive-bigquery-web-performance-answers/
http://velocityconf.com/velocity2013/public/schedule/detail/28313
http://programming.oreilly.com/2013/06/using-iframes-to-address-third-party-script-issues-and-boost-performance.html
http://csswizardry.com/2013/01/front-end-performance-for-web-designers-and-front-end-developers
http://net.tutsplus.com/articles/scaling-wordpress-for-hi-traffic/
http://www.igvita.com/2013/01/15/faster-websites-crash-course-on-web-performance/
http://www.sitepoint.com/how-the-xmas-sales-backend-was-built/
http://net.tutsplus.com/tutorials/php/building-ribbit-in-php/
http://net.tutsplus.com/tutorials/html-css-techniques/build-a-twitter-clone-from-scratch-the-design/
http://net.tutsplus.com/tutorials/php/advanced-codeigniter-profiling-with-xhprof/
http://codeascraft.etsy.com/2013/01/11/schemanator-love-child-of-deployinator-and-schema-changes/
http://calendar.perfplanet.com/2012/creating-a-performance-culture/
http://ofps.oreilly.com/titles/9781449344764/LATENCY_BANDWIDTH_PRIMER.html
http://www.igvita.com/posa/high-performance-networking-in-google-chrome
https://blog.wikimedia.org/2013/02/01/from-duct-tape-to-puppets
http://aphyr.com/posts/269-reaching-200k-events-sec
http://venturebeat.com/2013/01/30/rubygems-org-hacked-interrupting-heroku-services-and-putting-millions-of-sites-using-rails-at-risk/
https://community.rapid7.com/community/metasploit/blog/2013/01/29/exploit-for-ruby-on-rails-cve-2013-0333
http://programming.oreilly.com/2013/10/going-beyond-onload-measuring-performance-that-matters.html
http://www.arraynetworks.com/press-release-new-array-networks-multi-tenant-appliance-supports-eight-fully-independent-adc-instances-with-guaranteed-performance-slas.html
http://blogs.keynote.com/the_watch/2014/06/performance-in-context.html
https://www.apicasystem.com/news/2014/06/25/apica-releases-loadtest-2-8-powerful-load-testing-platform-featuring-integrations-teamcity-appdynamics/

Cometd
http://www.sitepoint.com/push-notifications-with-prowl/
HTTP Pipeling
KeepAlive
Threads
KeepAliveTimeout
MaxKeepAliveRequests
http://www.sitepoint.com/profiling-page-loads-with-the-navigation-timing-api/
http://sysadvent.blogspot.com/
http://awsadvent.tumblr.com/
http://calendar.perfplanet.com/2012/
http://zkybase.org/blog/2012/11/22/designing-configuration-management-schemas
http://sdarchitect.wordpress.com/2012/07/24/understanding-devops-part-1-defining-devops
http://www.igvita.com/2012/11/30/web-performance-anomaly-detection-with-google-analytics/
http://tomayko.com/writings/adopt-an-open-source-process-constraints
http://dyn.com/level-up-your-presentation-4-tips-to-improve-your-next-speaking-gig/
http://www.speedawarenessmonth.com
http://stevesouders.com/
http://www.youtube.com/playlist?list=PL80D9129677893FD8&feature=plcp&imm_mid=08eb05&cmp=em-velocity-newsletters-july-direct
http://www.theregister.co.uk/2012/08/10/jboss_and_its_successors/
http://pragprog.com/magazines/2012-08/tales-from-the-ops-side
http://www.stevesouders.com/blog/2012/07/30/high-performance-everywhere/
http://dev2ops.org/blog/2012/7/23/integrating-devops-tools-into-a-service-delivery-platform-vi.html
http://robhirschfeld.com/2012/07/25/ops-late-binding-is-critical-best-practice-and-key-to-crowbar-differentiation/
https://communities.bmc.com/communities/blogs/bmcpodcasts/2012/07/30/devops-leadership-series-with-james-turnbull
http://foodfightshow.org/2012/07/interview-with-theo-schlossnagle.html
http://radar.oreilly.com/2012/07/help-the-oreilly-animals.html
http://www.geekle.id.au/2012/07/bootstrapping-infrastructure-coders.html
http://www.12factor.net/?imm_mid=091406&cmp=em-velocity-newsletters-aug9-direct
http://www.digitalsanctuary.com/tech-blog/general/the-twelve-factor-app-review-part-1.html
http://justfewtuts.blogspot.com/2012/07/devops-and-12factorapp-some-obsolete.html
http://h30499.www3.hp.com/t5/Discover-Performance-Blog/DevOps-gurus-track-the-value-and-ROI-of-DevOps/ba-p/5736093
http://theshipshow.com/2012/08/hire-the-best/
http://ocdevel.com/blog/nodejs-frameworks-comparison
http://omniti.com/seeds/2012
http://jtimberman.housepub.org/blog/2012/08/10/vagrant-multiple-provisioners/
https://devcenter.heroku.com/articles/django-memcache
http://cfengine.com/markburgess/blog_cap.html
http://cfengine.com/markburgess/blog_cap2.htm
http://en.wikipedia.org/wiki/Promise_theory
http://googledevelopers.blogspot.com/2012/08/lossless-and-transparency-modes-in-webp.htm
http://www.youtube.com/watch?v=MksKaRpWD-o
http://devopscafe.org/show/2012/9/5/devops-cafe-episode-32.html
http://about.travis-ci.org/blog/2012-09-24-post-mortem-pull-request-unavailability/
http://www.mirantis.com/blog/gartner-cannot-tell-about-openstack-cloud/
http://www.gartner.com/technology/reprints.do?id=1-1C3IGID&ct=120919&st=sb&imm_mid=096f8d&cmp=em-velocity-newsletters-oct4-direct
http://www.devco.net/archives/2012/08/31/using-mongodb-as-a-queue.php?imm_mid=096f8d&cmp=em-velocity-newsletters-oct4-direct
http://blog.vuksan.com/2012/09/01/my-monitoring-setup/?imm_mid=096f8d&cmp=em-velocity-newsletters-oct4-direct
http://lucumr.pocoo.org/2012/9/24/websockets-101/?imm_mid=096f8d&cmp=em-velocity-newsletters-oct4-direct
http://devopscafe.org/show/2012/9/26/devops-cafe-episode-33.html?imm_mid=096f8d&cmp=em-velocity-newsletters-oct4-direct
http://www.kitchensoap.com/2012/09/10/fundamental-stress-strain-curves-in-web-engineering/?imm_mid=096f8d&cmp=em-velocity-newsletters-oct4-direct
http://www.slideshare.net/postwait/monitoring-and-observability?imm_mid=096f8d&cmp=em-velocity-newsletters-oct4-direct
http://www.strangeloopnetworks.com/resources/research/state-of-mobile-ecommerce-performance/?imm_mid=096f8d&cmp=em-velocity-newsletters-oct4-direct
https://speakerdeck.com/u/rem/p/mobile-debugging?imm_mid=096f8d&cmp=em-velocity-newsletters-oct4-direct
http://queue.acm.org/detail.cfm?id=2446236&imm_mid=0a2ec6&cmp=em-velocity-newsletters-vlny-cfp-20130307-direct

Compressing web pages:
http://coding.smashingmagazine.com/2010/01/06/page-performance-what-to-know-and-what-you-can-do/
http://www.orangecoat.com/smaller-and-faster-web-pages-with-gzip-deflate-and-apache
http://www.howtoforge.com/apache2_mod_deflate
http://stackoverflow.com/questions/75482/how-can-i-pre-compress-files-with-mod-deflate-in-apache-2-x
http://crazytoon.com/2008/05/29/apache-gzip-compression-how-do-i-speed-up-my-website-download-time/
http://www.ffnn.nl/pages/articles/linux/apache-2-mod_deflate-benchmark.php
http://betterexplained.com/articles/how-to-optimize-your-site-with-gzip-compression/
http://sebastians-pamphlets.com/dynamic-pages-can-support-if-modified-since-too/
http://www.edginet.org/techie/website/http.html
http://www.globalknowledge.com/training/generic.asp?pageid=2221&country=United+States
http://code.google.com/p/minify/
http://code.google.com/p/cssmin/
http://www.ibm.com/developerworks/linux/library/l-tune-lamp-2/index.html
http://bytes.com/serveradministration/webservers/apache/theapachewebserver/page3.html
http://www.linuxquestions.org/linux/articles/Jeremys_Magazine_Articles/Optimizing_Apache
http://httpd.apache.org/docs/2.2/misc/perf-tuning.html
http://serverfault.com/questions/29126/optimize-apache-php-mysql-running-on-vps-for-heavy-load
http://www.crucialp.com/resources/tutorials/server-administration/optimize-tweak-high-traffic-servers-apache-load.php
http://people.redhat.com/alikins/system_tuning.html
http://perl.apache.org/docs/1.0/guide/performance.html
http://www.smashingapps.com/2009/12/23/layeronline-need-for-speed-google-loves-it-fast.html
http://httpd.apache.org/docs/2.0/mod/mod_deflate.html
https://developer.mozilla.org/en-US/docs/CSS/Writing_Efficient_CSS?redirectlocale=en-US&redirectslug=Writing_Efficient_CSS

Cause of Performance Degradation:

  • Latency:
    • Network distance
    • Network reliability
    • Data size
    • Operation granularity
    • Resource contention
    • JVM GC

Books:
http://shop.oreilly.com/product/0636920028048.do

Premature optimization is the root of all evil.

Gather statistics. Know where the problem is, before you can diagnose. Various tools such as nagios (network monitoring), top, ps, free, and strace give you relevant information on each machine. If both the web servers and the backend database server are busy, then you should look into optimizing the backend database (use MySQL query cache, use memcache, add indexes, add more memory, etc).

Benchmark, benchmark, benchmark.

Read "Patterns of Enterprise Application Architecture" by Martin Fowler (page 6 - 9)

A significant change in configuration may invalidate any facts about performance. If you upgrade to a new version of your virtual machine, hardware, database, or almost anything else, you must redo your performance optimization and make sure they're still helping. In many cases, a new configuration can change things. Indeed, you may find that an optimization you did in the past to improve performance actually hurts performance in the new environment.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License