Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

DistributeMe Agents

Warning

The agent support in distributeme is yet experimental and shouldn't be used in production environment

Table of Contents

What are agents

Agents are mobile programs which can move between different jvms via DistributeMe mechanisms and are executed in the target jvm.

Why do we need agents

Agents can do things, standard programs can't.

  • Get access to methods of services or other components that are not exposed via DistributeMe over net.
  • Execute massive calculations locally (if you need to make 1000 requests its much faster to execute them locally and move the results, as to execute them over network).
  • Load new code which didn't exist at the compile/start time of the service.
  • Inspect the JVM.
  • Act.

How does it work.

TBD.

Example Agent

This is a HelloWorld Agent which simply travels to the target JVM and prints out a "HelloWorld" message there. Note, that the agent code can be written after the service is deployed.

svn
distributeme/trunk/distributeme-agents/java/org/distributeme/agents/operatives/HelloWorldAgent.java
distributeme/trunk/distributeme-agents/java/org/distributeme/agents/operatives/HelloWorldAgent.java