270 likes | 380 Views
INTENSIVE PLATFORM. Getting started with distributed programming. Glossary. Service Using the API defines the business logic as Resources interactions. Framework Manage Resources and Middlewares to provide an API for distributed programming. Middleware
E N D
INTENSIVE PLATFORM Getting started with distributed programming
Glossary Service Using the API defines the business logic as Resources interactions. Framework Manage Resources and Middlewares to provide an API for distributed programming. Middleware It's the platform's component that allows integration of resources in the distributed network. Resource Any virtualization component. It exposes its attributes and functionalities.
Network topology • Local • Remote • Deployed
Protocol • XML interoperability • Inspirations • XMPP • RPC (XML RPC) • WSRF • Motivations • Rich semantic • Lightness • KISS
Protocol messages • Query • Information gathering. • Un/Provisioning • Requires the creation of a new resource instance. • Resolve • Prepares the access to some resource instance (maybe provisioning). • DemandRequest • Remote method invocation.
SDK Allows programmers to easily generate resource templates for framework and middleware.
Start your engines! Make friends! Share the knowledge and troubles! U R DA K1N6
Development environment • Download and decompress the following packages from http://tinyurl.com/abiquo-workshop • amw-0.8.0-add.tar.gz or amw-0.8.0-add.zip • mandelbrot-app.tar.gz or mandelbrot-app.zip • Check for middleware dependencies Ok, let's go!
MW - Resource files • MandelbrotResourcePlugin.* • Code needed to load the resource in the middleware. Nothing to do here. • MandelbrotResource.* • All the resource business logic goes here. We must write some lines of code here.
MW - Compile and execute (1/2) 1. Edit mw.conf
MW - Compile and execute (2/2) 2. Compile the new code 3. Execute
Framework approach • In the package you will find: • MandelbrotDistributed • Square distribution • Square to Job • ImageMandelbrot • Aplication main window • draw(Square, Data) • framework-core-api.jar • Stable snapshot. MandelService: A service with some code snippets to fill.
framework-configuration.xml • Domain list • Framework mode • Service initialization
Service • grid facade (configured access) • Knowlage model • Resource provider
Getting resources • Create resources (at node) • Give me some resource (at node) • Casting to concret Resource binding class.
Resource Access : Job • From a ResourceInstance creates a ResourceDemand transaction.
Workflow • Job composition facility • Job sequence (dependencies) • Workflows also composable • Job callback on state • launch • blocking
Allocation Mechanisms • complet the servcie TODOs !!! • initial mandelbrot resource instances set • care about node location ? • required provisioning ? • Job into workflow: • initialized static ? chaining • dinamic added ? using callback function
Getting Job results • job.getOutput • finally return to ImageMandelbrot • witch Square render the Data
Execution (ant mandelbrot) • Local access • Remote access • framework standalone • framework-configuration.xml for the service