Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "OSEE/Design/Messaging"

(Messaging System Design Notes)
Line 2: Line 2:
  
 
[[Category:OSEE]][[Category:Design]][[Category:Messaging System]]
 
[[Category:OSEE]][[Category:Design]][[Category:Messaging System]]
 +
 +
==What is the broker topology==
 +
network of brokers, sun803 + ail4dell + dts01, we need to make sure ote can function w/o the DB layer available... so i want to make sure we can run with a network of brokers, and it has to be easily configurable so that platforms not using the persistence layer can function.  Potentially in some cases we launch an embedded broker.
 +
 +
 +
==What are the topics/queue names, what are their functions, and how do we use them==
 +
 +
===CONSIDERATIONS:===
 +
#queue - used for app server commands - it gets removed by the first consumer to get it, so if there are multiple subscribers only one will act upon the message.
 +
#topic - used for status - broadcast - pubsub
 +
 +
 +
===Example Messages===
 +
OSEE.framework.persistence.<branch>
 +
OSEE.framework.persistence.global
 +
 +
queue:OSEE.persistence.createBranch
 +
subscribers: appServers
 +
publishers: oseeClients
 +
 +
topic:OSEE.persistence.newBranch
 +
subscribers: oseeClients
 +
publishers: appServers
 +
 +
 +
topic:OSEE.OTE.station.global.statusRequest
 +
subscribers: oteTestServers
 +
publishers: oteTestClients
 +
purpose: sent by test clients to find out information about available test servers, i.e. who exists, in what configuration, current state (connected clients, etc..)
 +
 +
topic:OSEE.OTE.station.global.statusResponse
 +
subscribers: oteTestClients
 +
publishers: oteTestServers
 +
purpose: the response message to a 'OSEE.OTE.station.global.statusRequest', contains configuration and state information of a test server
 +
 +
topic:OSEE.OTE.station.<station_name>.<station_id>.status
 +
subscribers: connected-oteTestClients
 +
publishers: specific-oteTestServers
 +
purpose: update of current state, errors, test point, current command, etc...
 +
 +
topic:OSEE.OTE.station.<station_name>.<station_id>.command
 +
subscribers: specific-oteTestServers
 +
publishers: connected-oteTestClients
 +
purpose: command the ote environment to do something
 +
 +
topic:OSEE.OTE.station.<station_name>.<station_id>.<model>.command
 +
subscribers: specific-oteTestServers
 +
publishers: connected-oteTestClients
 +
purpose: command a model to do something
 +
 +
topic:OSEE.OTE.station.<station_name>.<station_id>.<model>.status
 +
subscribers: connected-oteTestClients
 +
publishers: specific-oteTestServers
 +
purpose: update of current state, errors, test point, current command, etc...

Revision as of 14:36, 20 October 2009

Messaging System Design Notes

What is the broker topology

network of brokers, sun803 + ail4dell + dts01, we need to make sure ote can function w/o the DB layer available... so i want to make sure we can run with a network of brokers, and it has to be easily configurable so that platforms not using the persistence layer can function. Potentially in some cases we launch an embedded broker.


What are the topics/queue names, what are their functions, and how do we use them

CONSIDERATIONS:

  1. queue - used for app server commands - it gets removed by the first consumer to get it, so if there are multiple subscribers only one will act upon the message.
  2. topic - used for status - broadcast - pubsub


Example Messages

OSEE.framework.persistence.<branch> OSEE.framework.persistence.global

queue:OSEE.persistence.createBranch subscribers: appServers publishers: oseeClients

topic:OSEE.persistence.newBranch subscribers: oseeClients publishers: appServers


topic:OSEE.OTE.station.global.statusRequest subscribers: oteTestServers publishers: oteTestClients purpose: sent by test clients to find out information about available test servers, i.e. who exists, in what configuration, current state (connected clients, etc..)

topic:OSEE.OTE.station.global.statusResponse subscribers: oteTestClients publishers: oteTestServers purpose: the response message to a 'OSEE.OTE.station.global.statusRequest', contains configuration and state information of a test server

topic:OSEE.OTE.station.<station_name>.<station_id>.status subscribers: connected-oteTestClients publishers: specific-oteTestServers purpose: update of current state, errors, test point, current command, etc...

topic:OSEE.OTE.station.<station_name>.<station_id>.command subscribers: specific-oteTestServers publishers: connected-oteTestClients purpose: command the ote environment to do something

topic:OSEE.OTE.station.<station_name>.<station_id>.<model>.command subscribers: specific-oteTestServers publishers: connected-oteTestClients purpose: command a model to do something

topic:OSEE.OTE.station.<station_name>.<station_id>.<model>.status subscribers: connected-oteTestClients publishers: specific-oteTestServers purpose: update of current state, errors, test point, current command, etc...

Back to the top