High Availability - Clustering ColdFusion

Published By: Mike Brunt on Mar 31, 2008 at 5:25 PM

Times Viewed: 2466

Categories: None

I have added several blog postings here before on the theories of High-Availability (HA) and Clustering.  In this series of blog postings I will be attempting to create dedicated postings for the following scenarios. Please keep in mind that there will be alternative ways to do these things and what I am showing here is drawn from my experiences from either creating clusters for clients or working on existing clusters

Here are the scenarios I will be posting on...

Setting up a two instance cluster from a fresh install of ColdFusion

Load testing a two instance cluster on Java 1.6 (6.0) using the Round Robin algorithm

Load testing a two instance cluster on Java 1.5 (6.0) using the Round Robin algorithm

Load testing a two instance cluster on Java 1.6 (6.0) using the Round Robin algorithm and Sticky Sessions

Load testing a two instance cluster on Java 1.5 (5.0) using the Round Robin algorithm and Sticky Sessions

Load testing a two instance cluster on Java 1.6 (6.0) using the Round Robin algorithm and Sticky Sessions with Session Replication

Load testing a two instance cluster on Java 1.5 (5.0) using the Round Robin algorithm and Sticky Sessions with Session Replication

Load testing a two instance cluster on Java 1.6 (6.0) using the Weighted Round Robin algorithm

Load testing a two instance cluster on Java 1.5 (6.0) using the Weighted Round Robin algorithm

Load testing a two instance cluster on Java 1.6 (6.0) using the Weighted Round Robin algorithm and Sticky Sessions

Load testing a two instance cluster on Java 1.5 (5.0) using the Weighted Round Robin algorithm and Sticky Sessions

Load testing a two instance cluster on Java 1.6 (6.0) using the Weighted Round Robin algorithm and Sticky Sessions with Session Replication

Load testing a two instance cluster on Java 1.5 (5.0) using the Weighted Round Robin algorithm and Sticky Sessions with Session Replication

Load testing a two instance cluster on Java 1.6 (6.0) using the Random Weighted algorithm

Load testing a two instance cluster on Java 1.5 (6.0) using the Random Weighted algorithm

Load testing a two instance cluster on Java 1.6 (6.0) using the Random Weighted algorithm and Sticky Sessions

Load testing a two instance cluster on Java 1.5 (5.0) using the Random Weighted algorithm and Sticky Sessions

Load testing a two instance cluster on Java 1.6 (6.0) using the Random Weighted algorithm and Sticky Sessions with Session Replication

Load testing a two instance cluster on Java 1.5 (5.0) using the Random Weighted algorithm and Sticky Sessions with Session Replication

I will also attempt to do all of these with a single JVM (single jvm.config file) and multiple JVM's (multiple jvm.config files)

I hope to start these detailed postings tomorrow.

8 Comments

Sounds good! Looking forward to it, Mike. Will you be pulling the plug on one of the clustered servers to note how long it takes a current user on that server to recover their session? i.e. request page to establish session, kill server, request 2nd page.

We noticed a quirk when using cflogin in a clustered environment. When a server dies the session data is made available on the remaining server but cflogin roles are NOT available in the session. Our fix was to manually keep a copy of cflogin roles in a separate session var as a backup if the user is thrown to another server.

Posted By: Gary F on Mar 31, 2008

@Gary, yes we will be pulling the plug on instances in all of the tests we run; thanks for the comment by the way. I am intrigued by the cflogin issue, in our test application, which is taken from a fully functioning live application, we do not use the CF authentication mechanism. Let me see if I can do something about that somehow.

Posted By: Mike Brunt on Mar 31, 2008

Mike, with regards to your testing, will you also be touching on using clustering for performance as well as availability?

A big question for me here is whether clustering helps in that regard, or is it just for higher availability?

Cheers,

David

Posted By: David O Malley on Apr 4, 2008

@David, yes I very much will be reporting on performance in fact I will be running various load-tests to determine the results of different configurations - Round Robin etc. Thanks for your comments.

Posted By: Mike Brunt on Apr 4, 2008

I am particularly interested in "Load testing a two instance cluster on Java 1.6 (6.0) using the Round Robin algorithm and Sticky Sessions with Session Replication"

Can I view details on how to set this up in production and testing? (At my job this has not been done in the Adobe- recommended way: hence my noob question)

Posted By: Mark Ireland on Apr 4, 2008

Mike, when you write this up, make sure that you clearly specify whether or not you are talking about clustering multiple instances within the SAME server or across 2 or more PHYSICAL servers. Makes a big difference.

Session replication is certainly more of an issue across physical servers. And it should be a non-issue when clustering instances within the same server.

Posted By: Steve on Apr 9, 2008

@Mark, sorry to be late in responding and we are all "noobs" in many ways, the documentation for these things is very lacking. In addition, a lot of the stuff we do via the GUI can be temperamental and unreliable, that is my experience and I have seen that with many clients. Yes I will be blogging about all these things.

Posted By: Mike Brunt on Apr 9, 2008

@Steve, yes we will make sure we are very precise and detailed in what we write and will definitely be trying clusters and replication across physical servers.

Posted By: Mike Brunt on Apr 9, 2008

Add a Comment

Please provide your email address if you want to subscribe to this blog entry. An unsubscribe link is provided in notification emails. Your email address is never shown on this website.
Processing... Please wait
We are adding your comment.