CIShell Manual : CIWeb Implementation Proposals (old)
Created by Micah Linnemeier, last modified on Feb 22, 2011
CIWeb Implementation Proposals
Implementation |
Pros |
Cons |
Description |
Links |
WSRF/Web Services |
- Interoperability with other Web Services
|
- Lots of implementation/maintenance on our side
|
We would create plugins that would advertise algorithms as web services that can be consumed by CIShell or other programs that can consume WSRF or simple web services. |
Service Component Architecture |
- Building on an emerging SOA standard backed by BEA, IBM, Sun, etc
|
- May require a decent amount of implementation/maintenance
|
We would create plugins that would advertise algorithms as SCA services that can be consumed by CIShell and SCA clients |
|
CoGKit |
- Globus-maintained toolkit for connecting to Globus Grids
- Support for Ad-Hoc Grids (though pretty involved)
- Provides implementations for everything we need
- GridFTP client to transfer bundles
- GRAM to execute code
- GSI to authentication/authorize
|
|
We would create plugins/extend cishell to allow algorithms to be pushed to a grid computing resource for execution. |
|
gEclipse |
- Building on/working with an emerging top level eclipse project
- Allows us to be there on the ground level to ensure that the community implements features we will need
- It is middleware agnostic, so we could support many middleware implementations ourselves w/o changing code
|
- They do not have an implementation for Globus yet (they are working mainly on gLite first)
|
We would create plugins/extend cishell to allow algorithms to be pushed to a grid computing resource for execution. |
gEclipse HomePage |
R-OSGi |
- Should be very simple to set up
|
- There is currently no security setup for R-OSGi, we would have to implement the stack ourselves
|
We would create plugins that would allow algorithms to be accessed by outside osgi/cishell runtimes. This is distributed OSGi. |
cajo |
- Should be very simple to set up
- 100% Pure Java Solution
- Could combine w/ grid client solution
|
|
Sharing of algorithms could be done through cajo sharing algorithm objects. Could be combined with a grid solution to push the program to a grid node and then run the cajo program to communicate interactively with the core. |
cajo homepage |