vrs-development
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Vrs-development] Rough idea for a service manager


From: Eric Altendorf
Subject: [Vrs-development] Rough idea for a service manager
Date: Sat, 3 Aug 2002 02:36:03 -0700
User-agent: KMail/1.4.1

This is a pretty sad plan, but it will give us something to talk 
about.

---

First, we need an API for services -- and I'm thinking a C# interface
along the lines of the Java Servlet interface.  I'd call them
VRSService's ("EOD"'s??), and any such services must simply conform to
(implement) this interface.  Such an interface must include: (a)
initialization methods, (b) service request-response methods, and (c)
metadata so that the cluster manager can determine which nodes offer
which kinds of services... (all that has yet to be formalized)

(As a side note: using a C# interface allows us to write VRSServices 
in
any IL-compilable language.  In the future, the C# VRSService 
execution
system should be replaced with SEE, for truly portable cross-language
functionality.)

The service manager listens on a port for administration requests.
Valid requests (at this point) are: install or uninstall a service,
and activate or deactivate an installed service.  Communication with 
the
SM administration process is done via a special SM administrator 
client.

To create a new service, you must first write a class which implements
the VRSService.  You then connect to the service manager on the
administration port, authenticate etc, request a service installation,
and send the compiled VRSService to the service manager.  The service
manager persists this service (via the resource manager) for later 
use.

Once the service is installed, you can request the service manager to
activate it, with particular initialization parameters.  The service
manager instantiates the class and initializes it with the provided
parameters.  It is now active, and incoming requests received by the
service manager are packaged up into the appropriate format to pass to
the processRequest() (or whatever) method of the VRSService.  The
results are then passed back to the client.

----

Eric



reply via email to

[Prev in Thread] Current Thread [Next in Thread]