The Source for Java Technology Collaboration

Home » java.net Forums » GlassFish » GlassFish

Thread: When do I need Multicast, HADB, in-memory-replication on a cluster?

Welcome, Guest Help
Login Login
Guest Settings Guest Settings
This question is not answered. Helpful answers available: 1. Correct answers available: 1.

Reply to this Thread Reply to this Thread Search Forum Search Forum Back to Thread List Back to Thread List

Permlink Replies: 2 - Last Post: Jun 19, 2009 12:31 PM by: chrjohn
chrjohn

Posts: 85
When do I need Multicast, HADB, in-memory-replication on a cluster?
Posted: Jun 19, 2009 2:02 AM
 
  Click to reply to this thread Reply

Hi,

for a project we want to use the clustering capability of Glassfish V2.1.
There are some questions which arose, maybe someone can answer them or point me in the right direction.

1. The project does not have any HTTP sessions or SFSBs. So I guess I do not need the state replication via HADB or in-memory-replication? All I want is that the SLSBs and MDBs are highly available in the cluster, i.e. if one server fails then the beans from the other server are taking over.
2. I do not want JMS messages to get lost. I guess the broker can store the messages also in another data base. Or is HADB recommended for this?
3. Regarding multicasting: is this only used for the session replication feature? Or do I require multicast to be enabled in any case? For cluster discovery and the like?

Thanks in advance for your help/suggestions.
Cheers
Chris.

lwhite

Posts: 57
Re: When do I need Multicast, HADB, in-memory-replication on a cluster?
Posted: Jun 19, 2009 9:30 AM   in response to: chrjohn
Helpful
  Click to reply to this thread Reply

Hi Chris:

Taking your questions one at a time:

1. Correct. If you make no use of HTTP sessions nor SFSB's then you have no need for HADB or in-memory replication.

Both SLSB's and MDB's are stateless - here is useful information about MDB's:
In several respects, a message-driven bean resembles a stateless session bean.

* A message-driven bean's instances retain no data or conversational state for a specific client.
* All instances of a message-driven bean are equivalent, allowing the EJB container to assign a message to any message-driven bean instance. The container can pool these instances to allow streams of messages to be processed concurrently.
* A single message-driven bean can process messages from multiple clients.

2. JMS providers give you the option to have persistent topics, queues and messages.
This feature is meant to address your use case "I do not want JMS messages to get lost".
For more details on how the GlassFish MQ handles this consult the documentation.

3. Both our GMS (Group Membership Service) and our replication framework do make use
of multi-cast. It looks like you will not be using the replication framework, so you need to decide if you have need for GMS.

hope this helps

chrjohn

Posts: 85
Re: When do I need Multicast, HADB, in-memory-replication on a cluster?
Posted: Jun 19, 2009 12:31 PM   in response to: lwhite
 
  Click to reply to this thread Reply

Hi,

thank you for your reply, that was exactly the information I needed.

I just have one more question regarding point 3:
> 3. Both our GMS (Group Membership Service) and our
> replication framework do make use
> of multi-cast. It looks like you will not be using
> the replication framework, so you need to decide if
> you have need for GMS.

I want to have some kind of virtual JNDI/JMS/IIOP that always uses one of two instances of a Glassfish. E.g. if I send a message to queue/someQueue then both servers know about the queue and my application but of course only one MDB on one server should pick it up and do something with it. I hope that is comprehensible. ;) I'm new to this clustering stuff.
Simple question: does clustering work at all without GMS/multicast? If I cannot enable multicast in the network, I'm not able to do all this?

Thanks in advance,
Chris.




 XML java.net RSS