RE: Efficiency Question
> And the default is apparently 10MB not the 1MB noted in > Allaire 19740 I'm pretty sure that the default template cache size is 1 Mb (1024 Kb). The unit used in the CF Administrator is Kb. Dave Watts, CTO, Fig Leaf Software http://www.figleaf.com/ voice: (202) 797-5496 fax: (202) 797-5444 ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
RE: Efficiency Question
And the default is apparently 10MB not the 1MB noted in Allaire 19740 best, paul At 12:45 PM 3/16/01 -0500, you wrote: > > Rule of thumb on template cache size - double the size of all > > of your templates... this give CF room for maneuvering and it > > should never have to remove items from cache > >You might need more than that - the Allaire recommendations have gone from >3x file size to 5x! ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
RE: Efficiency Question
FYI - On NT, one of the perfmon stats within the Cold Fusion object is 'Cache Pops/Sec'; if this is anything other than zero, your template cache size is not big enough and CF is kicking templates out of cache to make room for new ones. The performance penalty this causes is significant... -Original Message- From: Dave Watts [mailto:[EMAIL PROTECTED]] Sent: Friday, March 16, 2001 12:46 PM To: CF-Talk Subject: RE: Efficiency Question > Rule of thumb on template cache size - double the size of all > of your templates... this give CF room for maneuvering and it > should never have to remove items from cache You might need more than that - the Allaire recommendations have gone from 3x file size to 5x! Dave Watts, CTO, Fig Leaf Software http://www.figleaf.com/ voice: (202) 797-5496 fax: (202) 797-5444 ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
RE: Efficiency Question
> Rule of thumb on template cache size - double the size of all > of your templates... this give CF room for maneuvering and it > should never have to remove items from cache You might need more than that - the Allaire recommendations have gone from 3x file size to 5x! Dave Watts, CTO, Fig Leaf Software http://www.figleaf.com/ voice: (202) 797-5496 fax: (202) 797-5444 ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
RE: Efficiency Question
> However, the article comes close but does not come right out and say it. > I guess if I understood what "P-Code" meant I'd get it. > > Not being a P-Code maven, does P-Code Caching mean the CF template > is processed to the point where it can still be used to house > dynamic content? > > I assume it means this. Otherwise, what's the point? P-Code is what CF compiles the templates into - if you have the templates cached then it reads them out of memory If you turn on Trusted Cache, then it'll never look for newer versions of the template, so it runs even faster Put the Template Cache up (fairly) big, and let the server do what it has to Rule of thumb on template cache size - double the size of all of your templates... this give CF room for maneuvering and it should never have to remove items from cache Philip Arnold Director Certified ColdFusion Developer ASP Multimedia Limited T: +44 (0)20 8680 1133 "Websites for the real world" ** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. ** ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
RE: Efficiency Question
Nice reference. Thanks! However, the article comes close but does not come right out and say it. I guess if I understood what "P-Code" meant I'd get it. Not being a P-Code maven, does P-Code Caching mean the CF template is processed to the point where it can still be used to house dynamic content? I assume it means this. Otherwise, what's the point? best, paul At 03:47 PM 3/16/01 +, you wrote: >Probably the simplest method, though you can do far more with CF caching >than just the query. Have a read of: >http://www.allaire.com/Handlers/index.cfm?ID=19470&Method=Full&Cache=Off ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
RE: Efficiency Question
Thanks, everyone for the input! #2 it is... Cheers, Christian -Original Message- From: Christian N. Abad [mailto:[EMAIL PROTECTED]] Sent: Friday, March 16, 2001 10:04 AM To: CF-Talk Subject: Efficiency Question Hello, All! I have a quick question : I am currently working on a ColdFusion application for a client of mine, and had a question about efficiency. Scenario : I have dozens of news articles, how-to guides, etc. that are all text-based and currently stored in a db in memo fields. These articles could be accessed often, and the same user may view several of these in one sitting (session). Question : What is the most efficient way to access this info? 1) Create a session-scoped array to store the titles and copy for the articles. (Running the query only once.) 2) Simply cache the query. 3) Let the user hit the db every time the page loads and they request a document. My goal here is to maximize efficiency and minimize db access. I imagine that if I have dozens of simultaneous users, that creating session arrays might be taxing to the server. Conversely, if I hit the db server every time the user requests an article, is this excessive? Setup : ColdFusion 4.5 Server Access 2000 (development) SQL Server (production) Any ideas, thoughts or comments? Thanks in Advance! Christian N. Abad ColdFusion Developer ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
RE: Efficiency Question
I guess we're agreed on 2) then.. Your best bet is probably to cache the query, but every time the text is changed, rerun the query with cachedwithin="#CreateTimeSpan(0,0,0,0)#". This will force the query to refresh at that point, but be cached from the next time it's accessed. This is an effective, simple approach to the situation where the data is accessed much more often than it's updated (as I assume is the case with you) -Original Message- From: Mark Woods [mailto:[EMAIL PROTECTED]] Sent: 16 March 2001 15:29 To: CF-Talk Subject: Re: Efficiency Question >1) Create a session-scoped array to store the titles and copy for the >articles. (Running the query only once.) Nah, messy, and with multiple sessions running you might run into unexpected problems with available memory resources. If you've gonna go this far, save hard copies of the articles (or even the large data fields) every time they are inserted/updated into the content management system or something. This is an excellent solution for sites which need to use a database to store data, but where that data is rarely updated. >2) Simply cache the query. Probably the simplest method, though you can do far more with CF caching than just the query. Have a read of: http://www.allaire.com/Handlers/index.cfm?ID=19470&Method=Full&Cache=Off >3) Let the user hit the db every time the page loads and they request a >document. Well, if the data is liable to change regularly this is probably the best solution, tied in with some query caching to improve performance perhaps. Mark ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
Re: Efficiency Question
>1) Create a session-scoped array to store the titles and copy for the >articles. (Running the query only once.) Nah, messy, and with multiple sessions running you might run into unexpected problems with available memory resources. If you've gonna go this far, save hard copies of the articles (or even the large data fields) every time they are inserted/updated into the content management system or something. This is an excellent solution for sites which need to use a database to store data, but where that data is rarely updated. >2) Simply cache the query. Probably the simplest method, though you can do far more with CF caching than just the query. Have a read of: http://www.allaire.com/Handlers/index.cfm?ID=19470&Method=Full&Cache=Off >3) Let the user hit the db every time the page loads and they request a >document. Well, if the data is liable to change regularly this is probably the best solution, tied in with some query caching to improve performance perhaps. Mark ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
RE: Efficiency Question
question: does the text change often? I wouldn't think so, but just in case... if no, then #3 is out... I would say no to #1 because if you have multiple users accessing the same document, then each will have their own session variable with same info. So, unless the text changes often (less then 15 minutes), I would cache the queries This way even in a multi-user situation, the document is only stored in one place in memory... Terry Bader IT/Web Specialist EDO Corp - Combat Systems (757) 424-1004 ext 361 - Work [EMAIL PROTECTED] (757)581-5981 - Mobile [EMAIL PROTECTED] icq: 5202487 aim: lv2bounce http://www.cs.odu.edu/~bader > -Original Message- > From: Christian N. Abad [mailto:[EMAIL PROTECTED]] > Sent: Friday, March 16, 2001 10:04 AM > To: CF-Talk > Subject: Efficiency Question > > > Hello, All! > > I have a quick question : > > I am currently working on a ColdFusion application for a > client of mine, and > had a question about efficiency. > > Scenario : > > I have dozens of news articles, how-to guides, etc. that are > all text-based > and currently stored in a db in memo fields. These articles could be > accessed often, and the same user may view several of these > in one sitting > (session). > > Question : > > What is the most efficient way to access this info? > > 1) Create a session-scoped array to store the titles and copy for the > articles. (Running the query only once.) > > 2) Simply cache the query. > > 3) Let the user hit the db every time the page loads and they > request a > document. > > My goal here is to maximize efficiency and minimize db > access. I imagine > that if I have dozens of simultaneous users, that creating > session arrays > might be taxing to the server. Conversely, if I hit the db > server every > time the user requests an article, is this excessive? > > Setup : > > ColdFusion 4.5 Server > Access 2000 (development) > SQL Server (production) > > Any ideas, thoughts or comments? > > Thanks in Advance! > > Christian N. Abad > ColdFusion Developer > > > ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
RE: Efficiency Question
Off the top of my head, I'd say you're probably best with option 2 -Original Message- From: Christian N. Abad [mailto:[EMAIL PROTECTED]] Sent: 16 March 2001 15:04 To: CF-Talk Subject: Efficiency Question Hello, All! I have a quick question : I am currently working on a ColdFusion application for a client of mine, and had a question about efficiency. Scenario : I have dozens of news articles, how-to guides, etc. that are all text-based and currently stored in a db in memo fields. These articles could be accessed often, and the same user may view several of these in one sitting (session). Question : What is the most efficient way to access this info? 1) Create a session-scoped array to store the titles and copy for the articles. (Running the query only once.) 2) Simply cache the query. 3) Let the user hit the db every time the page loads and they request a document. My goal here is to maximize efficiency and minimize db access. I imagine that if I have dozens of simultaneous users, that creating session arrays might be taxing to the server. Conversely, if I hit the db server every time the user requests an article, is this excessive? Setup : ColdFusion 4.5 Server Access 2000 (development) SQL Server (production) Any ideas, thoughts or comments? Thanks in Advance! Christian N. Abad ColdFusion Developer ~~ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists