ColdFusion, from Allaire, provides an application development platform suitable for network software. Although it's not as glamorous as, say, cold fusion nuclear energy, ColdFusion does include some exciting technology in its own right.

In a nutshell, ColdFusion provides components that enable the creation of dynamic, database-powered Web applications. By "Web applications," I mean software applications and services built with Web technologies -- both public Internet and intranet software. Examples of potential ColdFusion Applications on the intranet in particular include business process automation, training, content management, and bulletin board conferencing. On the Internet, ColdFusion can play a role in ecommerce sites just to name one example.

ColdFusion possesses a number of features that make it potentially appealing for Web development. It offers a high-level programming model not drastically different from the HTML files and editors that many Webmasters already know. It has been designed to allow for the integration of custom modules -- important for organizations looking to tailor software to fit their specific needs. And it supports connectivity to databases.


Visit Our
ColdFusion Development Services.

When trying to judge expected behavior from potentially problematic behavior, looking at memory behavior often is a place ColdFusion Administrators will start.

Even though the standard amount of RAM continues to increase, a close examination of an application's use of system memory remains a critical part of the Q&A process.

Fortunately for the developer, a variety of memory tracking abilities exist to troubleshoot an application's use of system memory. Unfortunately for the developer, the multitude of metrics to choose from increases the chances of making the wrong choice and tracking the incorrect data set.

This article will describe some of the available metrics for tracking memory usage in Microsoft's Windows NT/Windows 2000, Sun Microsystems' Solaris, and Linux.

Windows NT and Windows 2000

When monitoring ColdFusion memory usage in Windows NT or 2000, many developers use the "Mem Usage" statistic in the Task Manager. This statistic measures the working set size. Working set size roughly translates into how much of the ColdFusion process is being kept in RAM. Keep in mind, "Mem Usage" is NOT a measure of overall memory usage.

If overall memory usage needs to be checked periodically, use the "VM Size" column in the Task Manager. To view the "VM Size" column, make sure "Processes" is selected. Click on the "View" menu and choose "Select Columns". A dialog box will appear in which "VM Size" will be an option.

To monitor memory usage and log it over time, Performance Monitor will need to be used. In order to enable Performance Monitor to log memory usage statistics properly, "Pdlcnfig.exe" will need to be executed. Assuming that the system has Microsoft's Resource Kit installed, "Pdlcnfig.exe" will be located in the \WinNT\system32 directory.

This installs the performance logging service and launches the configuration window. To use the counter for ColdFusion memory logging, follow these steps:

  • Select "Process" in the "Performance Object" drop-down box.
  • Select "cfserver" from the "Instances" list.
  • Select "Private Bytes" from the "Performance Counters" list.
  • Click on "Add."

Set the log file name, and select the "Comma Separated Value" (CSV) file format if Excel charting is desired with the data. (CSVs can be opened directly in Excel.) Set the sampling interval (i.e., every 10 minutes) and start the performance logging service by clicking "start" or starting it via the control panel. If you get an error trying to start the service, reboot and try again.

If Windows is doing its job correctly, expect to see Mem Usage rise as ColdFusion runs. This just means more of ColdFusion is being stored in RAM and less is left out on disk while virtual memory is waiting to be paged in.

Remember, "Private Bytes" is the total virtual memory size of the cfserver process and equates to the "VM Size" metric inside Task Manage.

Neither of the statistics provided by the Task Manager or Performance Monitor will show memory being returned. That's because ColdFusion 4.5 incorporates the latest version of SmartHeap, which no longer returns unused memory to NT. Instead, memory is held, assuming ColdFusion may reuse it in the near future. While this method is faster and more efficient, SmartHeap can lead to confusion when looking at memory statistics on NT.

Read More. :-

Coldfusion Components also known as CFC's. A lot of people program Coldfusion and not use CFC's have; it's too hard to learn! It's too hard to learn?? No way!!

It's very easy to learn. It's just an other way of thinking than you're used to. You must see CFC's as building blocks. By constructing "building blocks" you're code is much cleaner and far more reusable, thus quicker to build your application. Most (if not every) ColdFusion Developer knows UDF's (User Defined Functions) and Custom Tags. CFC's are almost the same as Custom Tags, but have some differences:

  • Custom Tags have a single entry point; CFC's can have multiple entry points. This makes it possible to create a single component that does many related actions. (To do that with custom tags you would need multiple tags or cumbersome switch processing.)
  • Custom Tags have no formalized parameters passing and validation mechanism; CFC's do. In other words unlike custom tags, CFC's can validate passed data, enforce data types, check for required parameters, and optionally assign default values.
  • Custom Tags cannot persist; CFC's can. Custom Tags are blocks of code that are executed as is, while CFC's are objects and can be treated as such.
  • Custom Tags are designed to contain code; CFC's are designed to contain both code and data.
  • Custom Tags are accessible only by Coldfusion and only locally; CFC's can be accessed as web services, opening up a whole new world of reuse possibilities.

To sum it up, CFC’s and Custom Tags are quite different. Although their functionality does overlap a little, they really do not solve the same problems at all. So to learn the basics of CFC's while head right on it and start with some sample "spaghetti code" and transform it to a structured and reusable way; a CFC. Please note that this article only covers the basics of CFC's and does not handle any advanced topics.

More Information visit ColdFusion Development.

Looping is a programming technique that repeats a set of instructions or displays output repeatedly until one or more conditions are met.

The first thing that we need to do it to query a database

This tag supports the following types of loops:

  • cfloop: index loop
  • cfloop: conditional loop
  • cfloop: looping over a date or time range
  • cfloop: looping over a query
  • cfloop: looping over a list, a file, or an array
cfloop: index loop

An index loop repeats for a number of times that is determined by a numeric value. An index loop is also known as a FOR loop.


The loop index is #LoopCount#.

cfloop: conditional loop

A conditional loop iterates over a set of instructions as long as a condition is True. To use this type of loop correctly, the instructions must change the condition every time the loop iterates, until the condition is False. Conditional loops are known as WHILE loops, as in, "loop WHILE this condition is true."


The following example increments CountVar from 1 to 5.

cfloop: looping over a date or time range

Loops over the date or time range specified by the from and to attributes. By default, the step is 1 day, but you can change the step by creating a timespan. The cfloop tag loops over tags that cannot be used within a cfoutput tag.



The following example loops from today's date to today's date plus 30 days, stepping by 7 days at a time and displaying the date:

cfloop: looping over a query

A loop over a query executes for each record in a query record set. The results are similar to those of the cfoutput tag. During each iteration, the columns of the current row are available for output. The cfloop tag loops over tags that cannot be used within a cfoutput tag.



cfloop: looping over a list, a file, or an array

Looping over a list steps through elements contained in any of these entities:

A variable
A value that is returned from an expression
An array
A file
Looping over a file does not open the entire file in memory.



This loop displays four names:

You can put more than one character in the delimiters attribute, in any order. For example, this loop processes commas, colons, and slashes as list delimiters:

ColdFusion skips the second and subsequent consecutive delimiters between list elements. Thus, in the example, the two colons between "George" and "Ringo" are processed as one delimiter.

To loop over each line of a file, use the tag as follows:

To read a specified number of characters from a text file during each iteration of the loop, use the tag as follows:

To loop over an array, you can do the following:

More Information visit ColdFusion Development.