What actually matters.
WHAT DETERMINES APPLICATION PERFORMANCE, USUALLY
Database queries Network calls Algorithm choice Input and output
WHAT DETERMINES IT RARELY
Language execution speed.
WHY THAT MATTERS
Most applications are not limited by their language, and choosing a faster language does not fix a slow application.
WHAT TO DO INSTEAD OF CHANGING LANGUAGE
Measure where time is actually spent.
WHAT YOU WILL USUALLY FIND
A query without an index A request made in a loop An algorithm scaling badly
WHEN LANGUAGE PERFORMANCE GENUINELY MATTERS
Tight computational loops High-volume low-latency services Constrained embedded environments Very large data processing
WHAT TO DO IN THOSE CASES
Use a faster language for that part, not the whole system.
WHAT THAT PATTERN IS CALLED
Writing the majority in a productive language, with performance-critical parts in a fast one.
WHAT ENABLES IT
Foreign function interfaces, letting languages call each other.
WHAT TO MEASURE BEFORE OPTIMISING ANYTHING
Where the time goes, with a profiler.