> We ran into a very frustrating problem today that made my doubts in
> Spectra really strong and the CF world dim...
>
> The problem is basically an enormous SLM size. The number of Spectra
> pages on our site had reached nearly a thousand and a total number of
> containers is around a 3.000. Perfomance had drastically degraded once
> we reached this number of objects in SLM. Spectra is loading the whole
> Site Layout Model in the server scope every time a CF server is
> started. This takes somehting like 200 Mb of RAM and what is really
> frustrating up to 5-7 minutes of time.
>
> Moreover, if two or more people happen to access the CF server at the
> same time when it's starting, CF just locks up and initialization
> process takes up to 20 minutes!
What you can do to avoid these kind of deadlocks is place an exclusive
lock around <cfa_applicationInitialize>, but that would probably kill
performance if the number of concurrent users goes way up.
I too have been suffering from large SLM syndrome. What I eventually wound
up doing was the following. All pages essentially call a display method on
one particular contentObject. Rather than creating indivudual pages and
containers, I created just one page.
The page has one container and a rule that computes the object to be
displayed based on certain criteria, in this case a SQL search on a
URL-like property in the properties table. So for example if one were to
hit http://www.an.example/foo.cfm, the rule would do something like
select objectid from properties
where propertyname = 'URL'
and chardata = '/foo.cfm'
and then place the resulting object in request.cfaContainer.aObjects.
Actually in reality it's a bit more complicated, because an object could
be displayed at more than one URL, but that's not important right now.
The benefit of this is that you get nice user- and searchbot-friendly URLs
without the memory impact of the SLM. Plus you avoid having to do all
kinds of nasty things, like creating a container and then mess around with
its schedule content rule each time someone decides to create a new page.
--
Michiel Boland <[EMAIL PROTECTED]>
Digital Valley Internet Professionals
Plantsoen 17, Wageningen, The Netherlands
Phone: +31 317 465555, Fax: +31 317 460276
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Structure your ColdFusion code with Fusebox. Get the official book at
http://www.fusionauthority.com/bkinfo.cfm
------------------------------------------------------------------------------
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/spectra_talk or send a
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.