Storage Analysis
ScopeOriginal SourceWhere Stored Between RequestsWhere Stored At Runtime
ServerCF Server/CFMLShared MemoryShared Memory
ApplicationCFMLShared MemoryShared Memory
SessionCFMLShared MemoryShared Memory
ClientCFMLDB or RegistryRequest Memory
CookieCFML/HTTP HeaderBrowserRequest Memory
RequestCFML(Source)Request Memory
VariablesCFML(Source)Module Memory
AttributesCFML(Source)Module Memory
CallerCFML(Source)Module Memory
FormHTML/HTTP Request(Source)Request Memory
URLHTML/HTTP Request(Source)Request Memory
CGIWeb Server(Source)Request Memory


 Characteristics
ScopeShared Memory (Lock!)Persistant Across RequestsAvailable In CFMODULECan Handle Complex DataRead OnlyAvailable Across Cluster
ServerYesYesYesYes  
ApplicationYesYesYesYes  
SessionYesYesYesYes  
Client YesYes  Yes
Cookie YesYes  Yes
Request  YesYes Yes
Variables   Yes Yes
Attributes   Yes Yes
Caller   Yes Yes
Form  Yes <4.5Yes
URL  Yes <4.5Yes
CGI  Yes YesYes


* Inside <CFMODULE>, the parent template's VARIABLES variables can be accessed with the CALLER scope. It is intended to be used as a method for reading and setting local variables in the parent template directly from inside the <CFMODULE>. While it is not commonly used as a local scope, it truly is a local scope, since it is a COPY of the parent template VARIABLES scope. CALLER variables get copied back to the parent template VARIABLES when the <CFMODULE> call ends, and then die.