The FileBuy Globus-Based Resource Brokering System

GlobusWORLD 2006 Lab

Logo

Welcome!

Welcome to the GlobusWORLD 2006 lab page for The FileBuy Globus-Based Resource Brokering System - A Practical Example

When: 09/15/2006, 9:00 AM - 1:00 PM

Where: GlobusWORLD 2006, room TBD

[Note: This lab is only open to GridWorld/GlobusWORLD attendees whose registration includes access to the labs, or who have registered specifically for this lab]

Lab Instructor: Borja Sotomayor, University of Chicago (borja AT cs DOT uchicago DOT edu)

Index

Overview

This lab provides a hands-on introduction to designing and developing a GT4-based application using multiple Java services. Throughout the lab, attendees will be presented with the design of FileBuy, a simple GT4-based brokering system that highlights common GT4 design patterns. Although this lab does not cover higher-level services such as GRAM, RFT, etc., the FileBuy application highlights scenarios where these services could be used (and plugged into FileBuy). Attendees will also be provided with a partial implementation, which they must complete by adding new services to the FileBuy system.

The FileBuy application is a part of the book Globus Toolkit 4: Programming Java Services, written by Borja Sotomayor and Lisa Childers, and published by Morgan Kaufmann Publishers / Elsevier. The version that will be used in the lab includes several improvements with respect to the version included in the book, so attendees who already own the book can still benefit from the contents of the lab. Both the original and the updated FileBuy are available under the terms of the Apache Public License (source code is available for download at the book website)

Prerequisites

The lab assumes the following knowledge:

Each attendee must have access to a network-enabled computer that is preloaded with a small set of open-source software. Attendees must be able to run this software in order to participate in the lab:

Optionally, attendees should have the following software:

Note! It is the attendees' responsibility to insure that their networking, Ant and JDK are configured and working properly prior to the lab. The integrity of Ant/JDK installations can be verified by building this sample code. Untar the file in an empty directory and, inside directory "sample", run ant. If Ant and JDK are properly installed, you should see several build messages followed by the message "Sample program output".

Lab Contents

The lab will cover the following:

  1. Introduction
  2. What is a resource brokering system?: A brief introduction to resource brokering systems, which arise frequently in Grid environments. FileBuy, in particular, is an example of a simple file brokering system.
  3. FileBuy in action: Before looking at the nitty-gritty details of FileBuy's design and implementation, we will first see the application in action.
  4. FileBuy Design: We will explain the design of the FileBuy system, with an emphasis on describing how certain design decisions map nicely to GT4 features.
  5. FileBuy Implementation: Because of the limited time, we will not explain all the FileBuy source code in detail, but we will briefly see how the code is organized, and will explain relevant portions of the code.
  6. Extending FileBuy: To highlight the loosely coupled nature of service-oriented applications, we will extend FileBuy with an additional service. Attendees will have to implement and deploy this new service in their own machines to extend the functionality of the FileBuy system.

Files