Thanks for all the valuable input. I've been improving the code, but it
seems that growth of usership is constantly outpacing me.... (which is a
good thing, I guess). 

I had  written something much like the CF_Accelerate tag by brandon
purcell, but mine can take a "mode" parameter to store to File (for
larger content), RAM_AS_Content (like his), RAM_AS_Query (to actually
cache cfquery results), or RAM_AS_Struct (to cache cfstructs).  This has
proven tremendously helpful in reducing load.

On a separate note, does anyone know the "ULIMIT" in windows of maximum
open sockets in CFMX's JVM by default?  When CFMX bombs out, it's
because of a (out of buffer space, max connections reached?) error....
I'm trying to narrow that down.   I suspected a cfscheduled RSS type
feed generator, and suspended it, but am curious what else is leaking
connections....  (I guess I need to run some netstats on this one when I
see it happen)....

I'm going to get a DB server set up and part out that portion of the
infrastructure.  That, as you all seem to agree, should be a better
investment than any sort of clustering infrastructure, simply to solve a
load issue.

Thanks as always for the helpful info!

-Dov

-----Original Message-----
From: Dave Watts [mailto:[EMAIL PROTECTED] 
Sent: Monday, December 20, 2004 10:08 AM
To: CF-Talk
Subject: RE: time to cluster, I think

> I'm thinking about clustering....  I read some of the articles on this

> (bpurcells, and others, etc) and I'm still a bit confused about which 
> is the best way for "Entry Level / simple" clustering.
> 
> Right now I have 1 CFMX6.1 Pro license and a single IIS  box, sharing 
> MSSQL2K with CF over 2 1Ghz processors, and a gig of ram.
> 
> This is what i was thinking would solve the problem for me, in theory.
> How do I get this idea off the ground, and how would you do things 
> differently, assuming there's a shoestring budget for this.??
>  
> I'd want 2 machines each running IIS and CFMX6.1.  Both IIS's would 
> share both CFMX instances.  Assume I have 4-5 cf apps running on 
> virtual hostnames on the web servers, but only one is massive....
>
> Here are my questions.  Assuming I have windows 2K servers, how can I 
> Get uploaded files to propagate across both machines in near real
time?
>
> Do they share a third machine's MSSQL 2k? or do I set up 2 sql 
> servers, one on each box, with replication? (Can both machines push 
> replication to each other, or does one always have to be the master?)
> 
> Please advise on a low cost, (hopefully software-based) 2 machine 
> clustering setup with CF, MSSQL and IIS.

Unfortunately, you don't usually find "clustering" and "low cost" in the
same sentence.

As others have already mentioned, there are lots of things you can do
before moving to a cluster. The biggest single thing you need to do is
deploy a dedicated database server on a separate machine. You'd want to
do this whether you cluster your web or application servers, or not.

To cluster CFMX or run multiple CFMX instances per server, you'd need to
purchase one CFMX Enterprise license per machine. Right now, you're
running CFMX Professional. So, that would be pretty expensive right
there.

You could cluster your web server software using the NLB functionality
built into Windows. I've set this up before for people using CFMX
Professional. In this case, you'd need to avoid using Session variables
or use "sticky sessions" to ensure that users only get sent to one
cluster member. If you use sticky sessions, you don't get full
load-balancing, since if a server goes down the users on that server
will lose their session data. While NLB is cheap, being built into
Windows Server 2003 (I'm not sure about previous versions), it's not as
nice as hardware load-balancers by a long shot in my opinion.

As Mike D has said, there's probably room for improvement within your
application code and current infrastructure. I would disagree that you
should necessarily spend your resources there, though. While I'm all for
improving the performance of applications in general, you will have to
decide whether it's cheaper to spend time optimizing your applications
or to invest in clustering or other hardware solutions.

Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
phone: 202-797-5496
fax: 202-797-5444




~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Special thanks to the CF Community Suite Gold Sponsor - CFHosting.net
http://www.cfhosting.net

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:188248
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

Reply via email to