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

