Welcome to the Globus Toolkit 3 Programmer’s Tutorial! q GT3 Core: A guide to programming basic Grid Services which only use the core services in. GT3. .. from a skeleton class or by using a delegation model, where incoming calls are. The core infrastructure of Globus Toolkit 3 (GT3 Core) is based on the Open Grid .. (often known as the declarative programming model). GT3 – Globus Toolkit Version 3. ▫ WSDL – Web Services level). ▫ OGSI is the specification (the details). ▫ GT3 is an implementation of. OGSI Programmers never write SOAP or WSDL. ▫. A stub is an Not efficient. ▫ Model 2: Subscribe.
|Published (Last):||16 November 2007|
|PDF File Size:||10.81 Mb|
|ePub File Size:||13.23 Mb|
|Price:||Free* [*Free Regsitration Required]|
Grids are generally distinguished from the field of traditional distributed computing by their ability to share resources such as processing power and databases on a large scale and with high performance. To date, grid technology has been used primarily by researchers progrsmming building specialized scientific and engineering applications. More recently, however, grids have migrated into the corporate world.
Utility computing, on-demand computing, and autonomous computing are programminng a few of the buzzwords describing technology that is based, to some degree, on large-scale resource sharing across organizational boundaries. Of the many grid technologies available to Java developers, the Globus Project’s Globus Toolkit is perhaps the most well known and widely adopted.
In this article, I briefly discuss the Globus Project, then examine the latest version of the Globus Globbus, with which you can create Java-based grid services and grid clients.
Chapter 11. GLOBUS GT3 Toolkit: Architecture
The open-source Globus Toolkit is the project’s key deliverable. As a unified collection of grid software services and libraries, the Globus Toolkit Version 2.
The toolkit supports discovery, management, and monitoring of grid resources, as well as file management and security features. The Globus Toolkit is used by grid projects around the world and is the foundation on which many commercial grid projects are currently being built.
Version 3 of the Globus Toolkit has been released and shipped earlier this year. Globus Toolkit 3 gives Java developers a standard solution for developing and deploying grid services and clients. As a high-performance grid framework, GT3 relies on native code that is exposed to Java developers through standard APIs. In other words, you can harness the power of Gt using pure Java.
The OGSI specification builds on grid- and web-service technologies to define how “grid services” are created and managed, and how information can be exchanged among grid services. According to the specification, a grid service is merely a web service that conforms to specific interface and behavior conventions that define how clients interact with that service.
Simply put, a grid service toolkif a special-purpose web service designed to operate in a grid environment. The current OGSI 1. Standalone in a lightweight J2SE server used primarily for testing and development work. In addition, it provides various hosting environments layered on top of an abstract container. Conceptually, the GT3 core is a suite of building blocks that provide the main functionality necessary for a variety of grid applications. GT3 also provides a security framework, various system services logging, yt3 and administration, and so forthand a development environment that includes code-generation tools to make life easier on gllbus application developers.
The tollkit boxes in Figure 1 indicate components mocel by the GT3 core, while gray boxes are considered outside of the core. User-defined services provided by application developers, for instance, are not considered part of the GT3 core. Similarly, the web-services engine and base services are not officially part of the core, although they are provided with the full GT3 programmjng time base services enable execution, data management, and information services; user-defined services are any services built using GT3 components.
The Security Infrastructure implementation, meanwhile, provides a variety of security features such as SOAP and transport-level message protection; end-to-end mutual authentication; and single sign-on authorization.
You define grid services interfaces by writing Java code, from which the toolkit generates the appropriate WSDL interfaces, or you can create the WSDL interfaces manually.
Listing Onefor example, is the Java interface code for the Counter example program provided with the toolkit, while Listing Two shows key portions of a corresponding WSDL interface. Only the abstract definition of the service including the types, message, and portType parts of WSDL are necessary when creating a WSDL interface directly, since the binding and service portions are generated by the toolkit. After defining the interface for your grid service, you must then generate the stub and support code for your service.
At this stage, you use the Ant tasks and XML batch file tools provided with GT3 to generate the code needed to host your grid service.
Creating Java Grid Services | Dr Dobb’s
Listing Four is the Ant command that generates these stubs for the Counter example Listings Three and Four are excerpts of the build. Upon generating stubs and support code, you actually implement the service. Listing Five shows the Java implementation of the Counter grid service, for which the roolkit CounterImp. This class extends the base grid services implementation, GridServiceImpland implements the CounterPortType interface created in the previous step.
In cases where you don’t want your grid service to be dependent on implementation classes provided with GT3 such as GridServiceImplyou can provide an implementation using an operation-provider delegation approach instead. After providing an implementation for your service, it’s ready to be deployed.
To do so, you must write a deployment descriptor that describes and configures your service, then bundle the descriptor and the various files that comprise the service into a Grid Archive GAR package. GAR packages can be deployed to any suitable grid service hosting environment.
Listing Six is a key excerpt of the deployment descriptor for the Counter grid service example that comes with GT3, while Listing Seven is the Ant command that builds the GAR package for this service.
Creating Grid Services Programmimg Creating grid services is only half mode, battle: To be of any real value, a grid service is accessed and used by a grid client. To get started, simply download and install the toolkit, then turn to the example programs that come with it the Counter example presented here is just one of many GT3 grid-service examples.
You’ll also find the Grid Service Development Tools Guide useful in learning the various Ant commands that you can use to create and manage your services it’s also available through the GT3 download area.