Ditto to Nate's comments. 

When you think about it you can imagine the challenges for yourself. To
truly do session replication you need enough physical memory to devise heaps
big enough for any one instance in the cluster to store all the sessions
(it's own and the replicated ones) for all the other instances in the
cluster. So if your sessions take up a modest 256 megs (for example) and you
have 4 machines then each machine will need a gig just for replicated
sessions.  Meanwhile, network traffic increases exponentially with each
cluster member due to session info flying back and forth between the various
instances... so you probably should put session traffic on it's own network
(multi-homed machines and private subnet perhaps).... then there is the
computation power it takes to keep it all in synch... over all it's
functional on a small scale but does not scale upward very well - as each
new instance has an exponential increase on the resource required.

-Mark

Mark Kruger - CFG
CF Webtools
www.cfwebtools.com
www.coldfusionmuse.com
O: 402.408.3733 x105
E: [email protected]
Skype: markakruger


-----Original Message-----
From: Nathan Strutz [mailto:[email protected]] 
Sent: Monday, October 10, 2011 1:06 PM
To: cf-talk
Subject: Re: ColdFusion 9 Session Replication


So the spirit of your question seems to be "can you replicate sessions
without software load balancing?" The basic answer is that you can't.
Session replication is a function of the CF load balancing features.
However, there are other ways to read your question.

If you are asking if you can swap sessions around without allowing your
coldfusion servers to have software-based failover, I am not completely sure
about that. It seems like something that should be possible, but I can't
think of how, it's been a couple versions and a few years since I've managed
clustered servers. Do you really want to disable software failover, though?
It will be more intelligent than your hardware failover.

Finally, I want to point out that session replication is typically a bad
idea. It will eat up your network bandwidth and feast on your CPUs. It will
have all your available memory for dessert. If one of your servers crashes
because it is out of RAM, the other one will do the same. So how do you get
around it? Obviously sticky sessions on your HWLB is the first step. But
assuming your servers will crash, how do your replicate session data? There
are lots of ways, and it depends on your application and what the
application rules are for what data to store where. Sometimes session data
can just be discarded and lost - things like saved search criteria.
Sometimes you can rebuild it from data in your database - you just need a
link from the session to the user information; you could use a cookie or put
it in your database. You can also take advantage of CF's caching engine,
Ehcache, which can do clustered cache, in memory, on disk, even state
servers, and combinations of these all.

Don't use client variables... just... don't.

nathan strutz
[www.dopefly.com] [hi.im/nathanstrutz] [about.me/nathanstrutz]


On Sun, Oct 9, 2011 at 5:30 PM, Brad Parker <[email protected]> wrote:

>
> Here's a question hopefully someone can answer.  Is it possible to use
> session replication to multiple instances on different physical servers
> without having to use CF load-balancing?  We have a hardware load balancer
> in front of the web servers.  I would like hardware appliance to handle
the
> load-balancing and failover in the event a failure.  All I want CF to do
is
> replicate the sessions so they are available on the other servers if the
> load balancer marks a server as unavailable.  Is this possible?
>
> 



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Order the Adobe Coldfusion Anthology now!
http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion
Archive: 
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:348038
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm

Reply via email to