Subject: BLUEJADE A Continuation of Why use Agents within JBoss
From: Joseph Olson (olsonja@dhfs.state.wi.us)
Date: Thu Nov 14 2002 - 14:15:49 MET
A Continuation of Why use Agents.
The biggest strength of Agents is a design philosophy You can start
with a large-scale process and decompose it into smaller
processes/agents. One of the smaller processes would run and after
finishing would return to a larger-scale agent with any results.
I have an application in mind, a GIS application.
There is an open-source library called Geotools
(Geotools.sourceforge.net) that can be used to display maps having
multiple layers.
Each layer in a map would represent some bit of information. I could
have a map of a Bioterrorism attack that will display Population
densities, road routes, air dispersal simulations, and weather. And this
is information that is available at certain geographic
locations(latitude/longitude). The map will have four layers with each
layer presenting a different piece of information. And the four pieces
are dynamic.
This is the solution unique to Agents:
I would have two agent containers 1 container would be with the Client
GIS Application
The second container would be run from Jboss.
The server-based container would have an Agent/Process called
ServerGeotoolsAgentManager.
The client-based container would have an Agent/Process called
ClientGeotoolsAgentManager.
The information for the 4 GIS layers is dynamic. And I would have a
Layer Specific agent called ServerGeotoolsLayerAgent monitoring a source
(remote weather station talking via satellite) for the information.
There is a behavior? for doing scheduled work. If the information
changes, the ServerGeotoolsLayerAgent would notify the
ServerGeotoolsAgentManager.
The ServerGeotoolsAgentManager would send an agent called
ChangeGeotoolsAgent to the client container with the changed
information.
The client application would have a top-level agent
ClientGeotoolsAgentManager waiting for the ChangeGeotoolsAgent. The
ClientGeotoolsAgentManager would notify a layer specific agent called
ClientGeotoolsLayerAgent. And finally a ClientGeotoolsLayerAgent would
modify the display.
This archive was generated by hypermail 2a22 : Thu Nov 14 2002 - 14:57:37 MET