CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.

Slides:



Advertisements
Similar presentations
Tuning: overview Rewrite SQL (Leccotech)Leccotech Create Index Redefine Main memory structures (SGA in Oracle) Change the Block Size Materialized Views,
Advertisements

Chapter 9. Performance Management Enterprise wide endeavor Research and ascertain all performance problems – not just DBMS Five factors influence DB performance.
QA practitioners viewpoint
Analysis of : Operator Scheduling in a Data Stream Manager CS561 – Advanced Database Systems By Eric Bloom.
The State of the Art in Distributed Query Processing by Donald Kossmann Presented by Chris Gianfrancesco.
Adding scalability to legacy PHP web applications Overview Mario A. Valdez-Ramirez.
Database Theory Why use database? Data is a valuable corporate resource which needs adequate accuracy, consistency and security controls. The centralized.
Chapter 13 (Web): Distributed Databases
In ColdFusion Caching & Performance Why is my code so slow? Muahahaha! I just bit a byte! Presented By Denard Springle NVCFUG June 2011.
Technical Architectures
Clarity Educational Community Clarity Educational Community Creating and Tuning SQL Queries that Engage Users.
Introduction to Databases
Recap. The Memory Hierarchy Increasing distance from the processor in access time L1$ L2$ Main Memory Secondary Memory Processor (Relative) size of the.
Kashif Jalal CA-240 (072) Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 2 of…
1 ©2007, University of Pisa, Dip. Ingegneria dell’Informazione – Andrea Bacioccola Survey on Database Architectures A. Bacioccola.
Progress Report 11/1/01 Matt Bridges. Overview Data collection and analysis tool for web site traffic Lets website administrators know who is on their.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 11 Database Performance Tuning and Query Optimization.
Distributed Systems: Client/Server Computing
Matthew J Mattia CSC  Cumbersome Code  Consistent/Predictable design (GUEPs #5, CD’s #10)  Display “proper” amount of information  Including.
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
Finding Nearby Wireless Hotspots CSE 403 LCA Presentation Team Members: Chris Scoville Tessa MacDuff Matt Mohebbi Aiman Erbad Khalil El Haitami.
Getting connected.  Java application calls the JDBC library.  JDBC loads a driver which talks to the database.  We can change database engines without.
Chapter 3 Memory Management: Virtual Memory
LAYING OUT THE FOUNDATIONS. OUTLINE Analyze the project from a technical point of view Analyze and choose the architecture for your application Decide.
ColdFusion Performance Tuning Keen Haynes Certified ColdFusion Developer.
Introduction Optimizing Application Performance with Pinpoint Accuracy What every IT Executive, Administrator & Developer Needs to Know.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 10 Database Performance Tuning and Query Optimization.
Performance of Web Applications Introduction One of the success-critical quality characteristics of Web applications is system performance. What.
Avalanche Internet Data Management System. Presentation plan 1. The problem to be solved 2. Description of the software needed 3. The solution 4. Avalanche.
Chapter 1 Introduction to Databases Pearson Education ©
_______________________________________________________________________________________________________________ PHP Bible, 2 nd Edition1  Wiley and the.
Introduction: Databases and Database Users
Improving Efficiency of I/O Bound Systems More Memory, Better Caching Newer and Faster Disk Drives Set Object Access (SETOBJACC) Reorganize (RGZPFM) w/
Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.
1 Optimizing Your ColdFusion Applications for Oracle Justin Fidler, CNA, CPS, CCFD Chief Technology Officer Bantu, Inc. 8 May 2001.
NoDB: Querying Raw Data --Mrutyunjay. Overview ▪ Introduction ▪ Motivation ▪ NoDB Philosophy: PostgreSQL ▪ Results ▪ Opportunities “NoDB in Action: Adaptive.
Operating Systems David Goldschmidt, Ph.D. Computer Science The College of Saint Rose CIS 432.
“Load Testing Early and Often” By Donald Doane Presentation to the Rockville MDCFUG.
Distributed Information Systems. Motivation ● To understand the problems that Web services try to solve it is helpful to understand how distributed information.
Object Oriented Database By Ashish Kaul References from Professor Lee’s presentations and the Web.
View 1. Lu Chaojun, SJTU 2 View Three-level vision of DB users Virtual DB views DB Designer Logical DB relations DBA DBA Physical DB stored info.
Full and Para Virtualization
Introduction and Principles Web Server Scripting.
Scaling RADIUS to Support a Nationwide Network Access Infrastructure Kostas Kalevras NTUA Network Operations Centre.
Programming for Performance CS 740 Oct. 4, 2000 Topics How architecture impacts your programs How (and how not) to tune your code.
1 Chapter 8 Execution Plan Management. 2 Overview of Execution Plan Management Review techniques to – override optimizer – Improve optimizer’s decisions.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
7.5 Using Stored-Procedure and Triggers NAME MATRIC NUM GROUP Muhammad Azwan Bin Khairul Anwar CS2305A Muhammad Faiz Bin Badrol Shah CS2305B.
Introduction to Databases
Databases and DBMSs Todd S. Bacastow January 2005.
DBMS & TPS Barbara Russell MBA 624.
Test-Driven Development
Tuning Transact-SQL Queries
Introduction and Principles
Stable and reliable Web Automation
Introduction to Databases
Parameter Sniffing in SQL Server Stored Procedures
Database Performance Tuning and Query Optimization
Marcos Freccia Stop everything! Top T-SQL tricks to a developer
© Copyright TIBCO Software Inc.
Data, Databases, and DBMSs
Web Development Using ASP .NET
Query Optimization Techniques
Lecture 1: Multi-tier Architecture Overview
TEMPDB – INTERNALS AND USAGE
Introduction to Databases
Chapter 11 Database Performance Tuning and Query Optimization
COMPONENTS – WHY? Object-oriented source-level re-use of code requires same source code language. Object-oriented source-level re-use may require understanding.
CPSC-608 Database Systems
Database System Architectures
Presentation transcript:

CF Performance Tuning Matt Liotta President & CEO Montara Software, Inc.

Agenda Definitions Silver bullets What not to do How to get started Performance tuning techniques Q & A

Definitions Best practices Optimization Scalability Overhead

Silver Bullets There are no silver bullets!!!

What Not To Do 1.Attempt to write optimized code from the beginning 2.Write unreadable i.e. not maintainable code that seems to offer performance advantages 3.Use techniques that you don’t understand

How To Get Started Hopefully with a highly structured application 1.Load test your application 2.Find unacceptable bottlenecks 3.Use the following techniques

Performance Tuning Techniques 1.Caching 2.Database optimization 3.UI logic changes 4.Batch processing 5.Code optimization 6.Code rewriting

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

Caching (cont.) See code example

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

Database Optimization (cont.) See code example

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

UI Logic Changes (cont.) See code example

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

Batch Processing (cont.) See code example

Code Optimization Occasionally, the programming logic is simply inefficient Code optimization can… Speed up a request Reduce request overhead

Code Optimization (cont.) See code example

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

Code Rewriting (cont.) See code example

Q & A Matt Liotta Blog: