Results 1 to 2 of 2

Thread: Chat application with JMS

  1. #1
    Join Date
    Mar 2008
    Posts
    7

    Default Chat application with JMS

    Hi,

    My chat application needs to multicast messages to the proper chat rooms. An important requirement is that clients must be able to subscribe and unsubscribe to/from chat rooms. It looks like that it could be done with message selectors.

    Here is my tentative architecture:

    1) 1 server runs the JMS provider that manages a topic (ActiveMQ)
    2) a servers farm (maybe 5 nodes) relays messages between the JMS provider and the clients (browsers)
    3) each node of the servers farm opens 1 JMS topic connection to the JMS provider
    4) each JMS topic connection is used to spawn 1 JMS topic session per client (possibly 2,000 per server)

    My questions are:

    1) Is it OK to end up with 5 JMS topic connections (1 per node in the servers farm) and 5 x 2,000 = 10,000 JMS sessions? Isn’t it too many?
    2) Should I go for plain JMS API, or do you think that Spring can help me? I have tried to use Spring JMS templates and message listeners, but I have struggled with the management of resources (create / kill sessions, launch / stop message listeners).

    Any other comment is welcome.

    Thank you,
    Francois

  2. #2

    Default

    Using ActiveMQ i would performance test this ...
    Or system has 1000 durable consumers to listen for same topic and 100 Producers at the same time and Active MQ (we used 4.1.1) did not really make it if the system creates about 100 messages / min per Producer
    The Broker often failed to distribute the messages etc. so this would be a thing i would have an eye on.
    We used Spring JMSTemplate and DefaultMessageListenerContainers for some listeners and the JMS API for the producers and some listeners.

    Maybe you have better Experiences with Active MQ or a newer version of Active MQ will do a better job...
    Last edited by c.petz@efkon.com; May 15th, 2008 at 11:52 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •