Organizations / Events
Computer Measurement Group (CMG)
ACM SIGMETRICS, the ACM
Special Interest Group (SIG) for the computer/communication system performance community
IFIP Technical Committee 7: System Modeling and Optimization
Velocity Web Performance and Operations Conference from O'Reilly Media
New York Web Performance Group and other Web Performance Meetup Groups
@Scale, a series of technical conferences for engineers who build or maintain systems that are designed for scale
dotScale, the European Tech Conference on Scalability
Performance Engineering
Wikipedia about Performance Engineering
SPE·ED Dr. Connie U. Smith's site about Software Performance Engineering (SPE) and SPE·ED - a tool support the SPE methods and models, including SPE publications
CMG conference proceedings a unique collection of papers about capacity planning, performance engineering, and performance management (CMG members only)
High Scalability Blog "Building bigger, faster, more reliable websites"
Performance By Design blog by Mark Friedman
Software Performance Engineering blog by Walter Kuketz
Thinking Clearly about Performance by Cary Millsap
Software,
Performance, or Engineering? by Daniel A. Menascé
Performance Engineering Parables by Chris Papineau
De-Mystifying Software Performance Optimization by Paul Del Vecchio
UML Profile for Schedulability, Performance, and Time Specification Version 1.1
Performance Programming: Theory, Practice and Case Study
A tutorial by Rajat Garg, Ilya Sharapov and Alistair Rendell presented at SC2002
Exploring roles for the UML diagrams in software performance
engineering by Jose Merseguer and Javier Campos
Performance Anti-Patterns by Bart Smaalders
Software Performance Anti-Patterns discussion
Detecting Performance Antipatterns in Component Based Enterprise Systems by Trevor Parsons and John Murphy
Modern Enterprise Performance Analysis Antipatterns by Ben Evans
1202 Performance Performance by Design, Andrew Lee's site
Performance Engineering
for Free by Andrew Lee
Introducing Performance Engineering by means of Tools and Practical Exercises
Highly Scalable Blog, articles on highly scalable software engineering
Performance Engineering of Software Systems, MIT Open Courseware
Performance Requirements
Beyond performance testing: How fast is fast enough by Scott Barber
Get performance requirements right - think like a user by Scott Barber
Worth the Wait? by Peter Bickford
Quality is in the eye of the beholder:
Meeting users' requirements for Internet quality of service by Bouch, A., Kuchinsky, A. and Bhatti, N.
When Is Your Web Site Fast Enough? by Chris Loosley
Response Times: The Three Important Limits,
excerpt from Chapter 5 of Usability Engineering, 1994 by Jakob Nielsen
Website Response Times by Jakob Nielsen
Response time in man-computer conversational transactions,
1968 paper by Robert Miller quoted by almost all later research
Understanding How Users View Application Performance by Peter Sevcik
How Fast Is Fast Enough by Peter Sevcik
Acceptable Response Times by Chris Loosley
Apdex web site "Apdex is a numerical measure of user satisfaction with the performance of enterprise applications, and reflects the effectiveness of IT investments in contributing to business objectives."
eCommerce Web Site Performance Today report by Forrester Consulting on behalf of Akamai Technologies, 2009.
User
Community Modeling Language (UCML 1.1™) for Performance Test Workloads by
Scott Barber
SEI Load Test
Planning Process by Mark McWhinney
Workload
Characterization by Daniel A. Menascé
Gathering
Performance Requirements by Manish Pande and Rajeshwari Ganesan
Quality Attribute Scenarios in Practice from Software Architecture in Practice
Quantifying Quality Requirements Using Planguage by Eric Simmons
Addressing Performance Requirements Using a Goal and Scenario-Oriented Approach by Zhiming Cai and Eric Yu
Method
for Estimating the Number of Concurrent Users by Eric Man Wong
Observability by Adrian Cockcroft
Requirements-by-Example by Adriano Comai
Steve Seow's Blog, the author of Designing and Engineering Time
Modeling Tools
Tools that could be used on early stages of computer systems
design and development when no system monitoring results exist. See
other Modeling Tools in Performance Management section.
SPE·ED "a tool designed specifically to support the SPE methods
and models defined in Connie U. Smith's book." "Using a small amount of data about envisioned software processing,
SPE·ED creates and solves performance models, and presents visual results."
Palladio, a software architecture simulation approach
QPME, (Queueing Petri net Modeling Environment),
an open-source tool for stochastic modeling and analysis
Performance
It is often difficult to separate information how to design systems with good
performance (architecture, performance patterns, language structures, etc.) from
information how to tune and deploy systems, quite often both sides are
considered. Although more architecture- technology- and language - oriented
links are placed here, a lot of related information can be found in the
Tuning section.
Java
Java Performance Tuning
Java Performance from Wikipedia
J2EE Performance for WebLogic,
WebSphere, JBoss, etc.
TheServerSide.com, Enterprise
Java Community
Scaling Your Java EE Applications, part 1 and part 2 by Wang Yu
Java Caching System (JCS)
Caching Dynamic Content with JSP 2.0 by Andrei Cioroianu
IBM WebSphere Developer Technical Journal: The top Java EE best practices
Microsoft
Microsoft .NET Framework: Performance
includes information on logging, tracing, profiling, and other diagnostic
techniques for analyzing and monitoring .NET applications.
Improving .NET Application Performance and Scalability online version
of
the Microsoft Press book
Windows Performance Analysis Developer Center
(Semi) Official Developer Division Performance Engineering blog News and commentary on developing scalable Windows applications
Vance Morrison's Blog, .Net performance
Rico Mariani's and
Maoni's blogs about CLR performance
CLR Perf Team Blog
Visual Studio Profiler Team Blog
Monitoring and Improving ASP.NET Application Performance by John Chapman
Improving ASP.NET Application Performance and Scalability by Joydip Kanjilal
ASP.NET
10 Tips for Writing High-Performance Web Applications by Rob Howard
Web
Book of Speed by Stoyan Stefanov
Akamai blog - Web Performance
High performance Web Sites, site and blog by Steve Souders
Definitive front-end performance guide
Best Practices for Speeding Up Your Web Site by Yahoo
Performance Calendar
Ilya Grigorik's blog
Performance Tips & Resources for PHP, Java, .Net, Python and Ruby
Measuring Web Performance by Steve Thair
Speed Awareness Month, tips and tools to speed up your website
Webpagetest.org tests website performance
Sitespeed.io, a set of Open Source tools to monitor and measure the performance of your web site
Lighthouse, an open-source, automated tool for improving the quality of web pages
Get Started With Analyzing Runtime Performance with Chrome DevTools
Boomerang, a JavaScript library for RUM (Real User Measurement)
Yslow analyzes web pages and suggests ways to improve their performance
Smush.it “smushes” images to make them smaller without losing any noticeable quality.
Show Slow is an open source tool that helps monitor various website performance metrics over time. It captures the results of YSlow, Page Speed and dynaTrace AJAX Edition rankings and graphs them, to help you understand how various changes to your site affect its performance
Mobile Perf Bookmarklet – According to Steve Souders, “Web development on mobile devices is especially challenging. The debuggers and profilers we use on the desktop aren't available. Bookmarklets are a good alternative.”
PageSpeed is a family of tools for optimizing the performance of web pages started at Google
mod_pagespeed is an open-source Apache module that automatically optimizes web pages and resources on them
HTTParchive.org a permanent repository of web performance information such as size of pages, failed requests, and technologies utilized.
Whichloadsfaster.com Pages compete head-to-head in your browser to see who's fastest
GTmetrix uses Google Page Speed and Yahoo! YSlow to grade your site's performance and provides actionable recommendations to fix these issues
Redbot analyses how well your site is managing the browser caching
A 10-Step Process for Understanding Site Performance & Automating Speed Testing
by Ruth Everett
SOA
High Performance SOA by Jason Bloomberg, a high-level overview
Misc
The Hoard Memory Allocator
MicroQuill SmartHeap
X Window System Application Performance Tuning by Kenton Lee
Profilers
List of performance analysis tools from Wikipedia
A Guide to Java Profilers
Intel VTune "Integrated performance analysis and tuning
environment that enables you to analyze your code's performance on Intel
architecture processors." Windows and Linux. C, C++, C#, Java, Python, Go, Fortran. Free
30-day evaluation.
Micro Focus
DevPartner (former Borland,Compuware) "provides a comprehensive development, debugging and tuning
solution to the challenges of application development, from concept to coding to
completion. DevPartner products cover Microsoft, Java, 64-bit and driver
development".
PurifyPlus (former Rational, IBM) Memory corruption detection, memory leak detection, application
performance profiling, code coverage analysis.Windows, Linux and
UNIX. Java , C/C++, managed VS.NET languages (including C# and VB.NET), Visual
C/C++, and Visual Basic.
YourKit tools for profiling Java & .NET applications, 15 days evaluation
JProfiler Java profiler
HttpWatch, an integrated HTTP sniffer for IE and Firefox that provides new insights into how your website loads and performs, free Basic Edition
Fiddler Web Debugging Proxy, freeware
Coz (and JCoz), casual profiling
All that profilers should be used with big caution in load testing and
production: in most cases they will not work due to huge performance overheads.
There are some performance
management tools that were developed for profiling and performance
diagnostics under load.
Monitoring
Only basic monitoring (using operating systems tools and utilities) are
considered here. See the
Application Performance Management Tools section for production level
monitoring and diagnostics.
Measuring and Monitoring NT Performance paper
and Monitoring NT Performance slides by Jerry Rosenberg
Windows 2000 Performance Counters Reference
Windows 2003 Performance Counters Reference
Introduction to Windows Server 2003's Performance Monitor
Windows Performance Monitor Windows 2008
Understanding .NET Performance Counters
Understanding SQL Performance Counters
Important Counters for Web Testing from Microsoft
Overview of ASP.NET Performance Monitoring
Access Windows Performance Monitor Counters from Java by Nicholas Whitehead
Jaqui Lynch's
Publications: UNIX, AIX, and Linux performance tuning presentations provide a lot of information about monitoring
UNIX Performance Data Analysis by Ellen Friedman
Wilson Mar's performance
monitoring notes
Topping top in Solaris 8 with prstat by Tom Kincaid and Andrei Dorofeev
Extreme Linux Performance Monitoring and Tuning
Extreme Linux Performance Monitoring Part II
Solving SAS Performance Problems: Employing Host Based Tools by Tony Brown
Proactive Application Monitoring by Alexandre Polozoff
MonitorTools.com Site devoted to
monitoring tools
Instrumentation
OpenTelemtery, provides a single set of APIs, libraries, agents, and collector services to capture distributed traces and metrics from your application - to analyze them from observability tools. A merge of OpenTracing and OpenCensus.
ARM (Application Response Measurement) API to enable applications to provide information to measure business transactions from an end user perspective and the contributing components of response time in distributed applications. [last version in 2007]. The Open Group standard.
Monitoring and Management for the Java Platform
Windows Instrumentation
Simple Network
Management Protocol (SNMP) is an application layer
protocol that facilitates the exchange of management information between network
devices.
Reliability and Resiliency
More Reliable Software Faster and Cheaper - An Overview by John D. Musa
Software Reliability Engineering site by John D. Musa
John Sellens' Reliability Page
International Symposium on Software Reliability Engineering (ISSRE)
Software Reliability references by CSIAC
Patterns for Resilient Architecture by Adrian Hornsby
Resiliency patterns by Microsoft
Books
Click on the book or its title to see book information and
reviews (if available) on Amazon.com
Performance Engineering
Performance Engineering of Software Systems by Connie U. Smith, 1990.
High-Performance Client/Server by Chris Loosley and Frank Douglas, 1997.
Designing Concurrent, Distributed, and Real-Time Applications with UML by Hassan Gomaa, 2000.
Performance Solutions: A Practical Guide to Creating Responsive, Scalable Software by Connie U. Smith and Lloyd G. Williams, 2001.
Software Reliability Engineering: More Reliable Software Faster and Cheaper by John D. Musa, 2004.
Building Scalable Web Sites: Building, Scaling, and Optimizing the Next Generation of Web Applications by Cal Henderson, 2006.
Scalable Internet Architectures by Theo Schlossnagle, 2006.
Designing and Engineering Time: The Psychology of Time Perception in Software by Steven C. Seow, 2008.
Software Performance and Scalability: A Quantitative Approach by Henry H. Liu, 2009.
Web Operations: Keeping the Data On Time by John Allspaw and Jesse Robbins, 2010.
Scalability Rules: 50 Principles for Scaling Web Sites by Martin L. Abbott and Michael T. Fisher, 2011.
The Art of Scalability: Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise by Martin L. Abbott and Michael T. Fisher, 2nd edition, 2015.
Time Is Money: The Business Value of Web Performance by Tammy Everts, 2016.
Architecting for Scale by Lee Atchison, 2016.
Linux Observability with BPF: Advanced Programming for Performance Analysis and Networking by David Calavera, Lorenzo Fontana, 2019.
BPF Performance Tools by Brendan Gregg, 2019.
Distributed Tracing in Practice: Instrumenting, Analyzing, and Debugging Microservices by Austin Parker, et al, 2020.
Java
Performance Analysis for Java Websites by Stacy Joines, et al, 2002.
Java Performance Tuning (2nd Edition) by Jack Shirazi, 2003
Java Concurrency in Practice by Brian Goetz, et al, 2006.
Pro Java EE 5 Performance Management and Optimization by Steven Haines, 2006.
Effective Java by Joshua Bloch, 2008.
Java Performance by Charlie Hunt and Binu John, 2011.
Pro JavaScript Performance: Monitoring and Visualization by Tom Barker, 2012.
Java Performance and Scalability: A Quantitative Approach by Henry H. Liu, 2013.
Java Performance: The Definitive Guide by Scott Oaks, 2014.
Optimizing Java: Practical Techniques for Improving JVM Application Performance by Benjamin Evans, et al, 2018.
.Net
Professional ASP.NET Performance by Matt Odhner, et al, 2002.
Maximizing .NET Performance by Nick Wienholt, 2003.
Performance Tuning and Optimizing ASP.NET Applications by Jeffrey Hasan and Kenneth Tu, 2003.
Improving .Net Application Performance and Scalability (Patterns & Practices), Microsoft, 2004.
Parallel Programming with Microsoft .NET by Colin Campbell, et al, 2010.
.NET Performance Testing and Optimization - The Complete Guide by Paul Glavich and Chris Farrell, 2010.
ASP.NET Site Performance Secrets by Matt Perdeck, 2010
Pro .NET Performance: Optimize Your C# Applications by Sasha Goldshtein, et al, 2012.
Ultra-Fast ASP.NET 4.5 by Rick Kiessig, 2012
Writing High-Performance .NET Code by Ben Watson, 2014
WPO
Web Performance Tuning by Patrick Killelea, 2002
High Performance Web Sites: Essential Knowledge for Front-End Engineers by Steve Souders, 2007.
Website Optimization: Speed, Search Engine & Conversion Rate Secrets by Andrew King, 2008.
Complete Web Monitoring: Watching Your Visitors, Performance, Communities, and Competitors by Alistair Croll and Sean Power, 2009.
Even Faster Web Sites: Performance Best Practices for Web Developers by Steve Souders, 2009.
Pro PHP Application Performance: Tuning PHP Web Projects for Maximum Performance by Armando Padilla and Tim Hawkins, 2010.
JavaScript Patterns by Stoyan Stefanov, 2010.
High Performance JavaScript (Build Faster Web Application Interfaces) by Nicholas C. Zakas, 2010.
Pro JavaScript Performance: Monitoring and Visualization by Tom Barker, 2012.
Pro HTML5 Performance by Jay Bryant and Mike Jones, 2012.
Web Performance Daybook Volume 2 by Stoyan Stefanov, et al, 2012.
Professional Website Performance: Optimizing the Front-End and Back-End by Peter Smith, 2012.
High Performance Browser Networking: What every web developer should know about networking and web performance by Ilya Grigorik, 2013.
High Performance Responsive Design: Building Faster Sites Across Devices by Tom Barker, 2014.
Designing for Performance: Weighing Aesthetics and Speed by Lara Hogan, 2014.
Time Is Money: The Business Value of Web Performance by Tammy Everts, 2016.
|
|