I was curious about CF's performance on a large CFC. I was very surprised at the results.

To generate the a CFC with lots of functions, I used CFSQLTool Stored Procedure CFC Wizard with a data source name for SQL Server's master database to generate a CFC that has a cffunction for each stored procedure. In each function is a cfstoredproc tag formatted to call the stored procedure.

My test SQL Server has 965 system stored procedures. To generate CFC CF took about 21 seconds plus another 90 seconds to send to the browser. After a few simple edits to remove extra comments, the generated CFC was 55,269 lines. Normally, CFSQLTool adds a copy of the SQL script for the procedure as a comment in the function. When trying to add the comments, the browsers could not handle the data volume. For the 965 test, I added a feature to the tool not to add comments. After removing comments, all 965 functions were generated in a single pass.

The testing for the generated CFC was a simple create object and calling 3 functions.

The first compile load of the CFC took about 23 seconds. But, after the compile, the same test ran in about 30ms. When testing with different data source names, the compile did not run again.

I have not digested a full understanding of the performance, but I am very happy with these results.

If you want to try the test yourself, you can download from CFSQLTool project on CFOpen. The actual download is under examples.

http://cfopen.org/projects/cfsqltool/

Technical note about the generated CFC. Some stored procedures have multiple result sets. I am still working on a way to calculate multiple result sets for code generation. In this CFSQLTool version, functions have one result set.

Joseph

-----------------------------------------------------------------------
http://www.switch-box.org/CFSQLTool/Download/

Switch_box                      MediaFirm, Inc.
www.Switch-box.org              Loveland, CO  USA



----------------------------------------------------------
You are subscribed to cfcdev. To unsubscribe, send an email to 
[email protected] with the words 'unsubscribe cfcdev' as the subject of the 
email.

CFCDev is run by CFCZone (www.cfczone.org) and supported by CFXHosting 
(www.cfxhosting.com).

CFCDev is supported by New Atlanta, makers of BlueDragon
http://www.newatlanta.com/products/bluedragon/index.cfm

An archive of the CFCDev list is available at 
www.mail-archive.com/[email protected]


Reply via email to