[SAGA-RG] Phone Call Tomorrow
Christopher Smith
csmith at platform.com
Thu Sep 21 11:00:50 CDT 2006
It seems like a fairly simple extension of the SAGA concepts to this.
Getting a handle to a service via a service name is exactly what our
symphony product provides in terms of API (it's part of defining our
"session"). This is worth exploring, for sure.
-- Chris
On 20/9/06 13:34, "Andre Merzky" <andre at merzky.net> wrote:
> Hi Chris,
>
> I pondered a while more about this (as you can imagine ;-).
> I think the major difference to the GridRPC API package we
> have is the service definition and specification. And then
> there is that service management API you also show in your
> slides. You said that this might not be interesting on API
> right now - but I actually think it might be interesting, at
> least at some point.
>
> Consider we'd have that service management API available,
> with:
>
> enum state
> {
> New = 1,
> Running = 2,
> Done = 3,
> Failed = 4
> }
>
> class service_description : implements saga::attributes
> {
> // that is similar to a job description, but can describe
> // what a service is supposed to be able to do
> // _semantically_
> }
>
> class service : implements saga::object
> implements saga::async
> implements saga::monitorable
> {
> CONSTRUCTOR (in service_description sd,
> out service obj);
> DESTRUCTOR (in service obj);
>
> get_endpoint (out string url);
>
> // Metrics:
> //
> // name: state
> // desc: fires if the service state changes
> // mode: Read
> // unit: 1
> // type: Enum
> // value: "Unknown"
> //
> // name: invoked
> // desc: fires if the service gets invoked by a client
> // mode: Read
> // unit: 1
> // type: Bool
> // value: "True"
> //
> }
>
>
> With something like that, the RPC bootstrapping for your
> purposes could be IMHO modeled as
>
> {
> saga::service_description sd;
>
> sd.set_attribute ("ServiceType", "DataBase query");
>
> saga::service s (sd);
> saga::rpc r (s.get_endpoint ());
>
> r.call ("SELECT * FROM 'mytable'");
>
> // rpc handle goes out of scope - connection closes
> // service handle goes out of scope - service dies
> }
>
> The RPC call is pseudo code (it would take a parameter stack
> as arg, not a string), the rest kind of real. Also, the RPC
> call can be asynchronous.
>
> So, the service API would basically ensure that the right
> rpc service is available at that point in time.
>
>
> Well, just wanted to put that on the list - I am not sure if
> that is useful for you. I am also not sure if that
> mechanism should be exposed to an application, or if it
> should be hidden in the API implementation.
>
> It might, however, be a first step toward a service oriented
> Grid API, which has been asked for from various sides. We
> should, however, make a clear distinction between
> Application oriented work and Service oriented work, at
> least IMHO.
>
> Cheers, Andre.
>
>
> Quoting [Christopher Smith] (Sep 19 2006):
>>
>> I will be going over the last two slides of the deck I showed at GGF17.
>>
>> http://www.ggf.org/GGF17/materials/325/006_smith.pdf
>>
>> -- Chris
>>
>>
>>
>> On 19/9/06 05:07, "Andre Merzky" <andre at merzky.net> wrote:
>>
>>> Hi all,
>>>
>>> we scheduled a conference call for tomorrow:
>>>
>>> Date: 20 September 2006
>>> Code: 808044
>>> Start: Wed 3:00 PM UCT/GMT
>>> Wed 5:00 PM Amsterdam / CEST
>>> Wed 8:00 AM Los Angeles
>>> Thu 0:00 AM Tokyo
>>> Number: 0844.888.8888 (UK)
>>> 01805.004.102 (Germany)
>>> +44.870.088.5706 (others)
>>>
>>> Agenda:
>>>
>>> - Agenda Bashing / Not Taker
>>> - review of GGF18
>>> - discussion about streaming API
>>> - discussion about service management API
>>> - AOB
>>>
>>> I know that the call time is late for Pascal et.al, but its
>>> the earliest time Chris can make (west coast), and the goal
>>> of the call is to continue some discussion we started at
>>> GGF17/GGF18.
>>>
>>> Cheers, Andre.
>>
>
>
More information about the saga-rg
mailing list