CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.
-
Upload
tracy-thomas -
Category
Documents
-
view
217 -
download
0
Transcript of CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.
![Page 1: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/1.jpg)
CF Performance Tuning
Matt LiottaPresident & CEO
Montara Software, Inc.
![Page 2: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/2.jpg)
Agenda
• Definitions• Silver bullets• What not to do• How to get started• Performance tuning techniques• Q & A
![Page 3: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/3.jpg)
Definitions
• Best practices• Optimization• Scalability• Overhead
![Page 4: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/4.jpg)
Silver Bullets
There are no silver bullets!!!
![Page 5: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/5.jpg)
What Not To Do
• Attempt to write optimized code from the beginning
• Write unreadable i.e. not maintainable code that seems to offer performance advantages
• Use techniques that you don’t understand
![Page 6: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/6.jpg)
How To Get Started
Hopefully with a highly structured application
1. Load test your application2. Find unacceptable bottlenecks3. Use the following techniques
![Page 7: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/7.jpg)
Performance Tuning Techniques
• Caching• Database optimization• UI logic changes• Batch processing• Code optimization• Code rewriting
![Page 8: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/8.jpg)
Caching
Just about any poorly written application can performed adequately with a proper caching strategy
You can cache…• Entire pages• Parts of pages• Backend logic e.g. queries
![Page 9: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/9.jpg)
Caching (cont.)
• See code example
![Page 10: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/10.jpg)
Database Optimization
Almost all poorly performing web applications are a result database interaction
Database interaction can be optimized by…• Changing when and how often you query• Using bind variables• Using stored procedures• Using joins correctly• Using indexes correctly• Not following proper database techniques• Not using a database at all
![Page 11: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/11.jpg)
Database Optimization (cont.)
• See code example
![Page 12: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/12.jpg)
UI Logic Changes
Some performance problems can’t be fixed with code alone because the user interface simply requires to much work to serve a request
A change in UI logic can…• Drastically reduce the amount of
work needed to serve certain requests
• Avoid redundant processing
![Page 13: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/13.jpg)
UI Logic Changes (cont.)
• See code example
![Page 14: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/14.jpg)
Batch Processing
Some web applications do work at request time that could have been done ahead of time
Batch processing can…• Can reduce page execution time by
decoupling some of the work• Allow programmatic control over
when certain work is done by an application
![Page 15: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/15.jpg)
Batch Processing (cont.)
• See code example
![Page 16: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/16.jpg)
Code Optimization
Occasionally, the programming logic is simply inefficient
Code optimization can…• Speed up a request• Reduce request overhead
![Page 17: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/17.jpg)
Code Optimization (cont.)
• See code example
![Page 18: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/18.jpg)
Code Rewriting
Rarely, parts of a web application simply can’t be written well in CFML
Rewriting code in another language can…
• Reduce code complexity• Reduce execution time• Reduce overhead
![Page 19: CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.](https://reader036.fdocuments.us/reader036/viewer/2022082518/5697bf751a28abf838c7ffdc/html5/thumbnails/19.jpg)
Code Rewriting (cont.)
• See code example