Over the years I have found session replication to be very network
intensive between the machines. I wrote a session persistence tag that
drops it to a database and rebuilds it as necessary. It works well if
you don't go changing your session scope on every page and you don't
have too much in there.
http://sessionswap.riaforge.org/

I recently refactored this to use some stored procedures that just do
a SELECT for the reads and an INSERT for the writes (got rid of the
updates)  .... I then have another job that cleans up the old session
data every 5 minutes. It works very well with 6,000 concurrent users.
You could do the same in a short amount of work.

John Blayter
Land line: 303.731.3009
Mobile: 303.325.1979
http://www.blayter.com/john/

Denver ColdFusion User Group Manager
http://denvercfug.org/



On Mon, Oct 10, 2011 at 12:05 PM, Nathan Strutz <[email protected]> wrote:
>
> 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:348036
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm

Reply via email to