1 / 9

Christopher Salembier CSC-8530 : Distributed Systems Nov-18-2009

Christopher Salembier CSC-8530 : Distributed Systems Nov-18-2009. Overview . Java middleware for computational grids Supports annotations Spring framework AOP-based configuration: Spring, aspectj & JBoss Loaders support for most runtime environments

jeb
Download Presentation

Christopher Salembier CSC-8530 : Distributed Systems Nov-18-2009

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Christopher Salembier CSC-8530: Distributed Systems Nov-18-2009

  2. Overview • Java middleware for computational grids • Supports annotations • Spring framework • AOP-based configuration: Spring, aspectj & JBoss • Loaders support for most runtime environments • Service Provider Interface-based architecture • Allows runtime environment to adapt seamlessly • All core functions exposed & configurable • Pluggable Fault-tolerance • Peer-to-Peer Class Loading • Redeploy code locally and distributes to all nodes • No build scripts or node restarting required

  3. Affinity map/reduce logic • Core functionality of gird • Process for splitting task into individual jobs • Execute tasks in parallel • Aggregate / reduce results to a final product • Synchronous & Asynchronous deployment • Executor Service • Task Futures • Load balancing • Automatic / configurable failover • Direct execution or annotation based

  4. Configurable Grid SPIs • GridDiscoverySPI – Remote node discovery • Default: GridMulticastDiscoverySpi • Others: GridCoherenceDiscoverySpi, GridJbossDiscoverySpi, GridJgroupsDiscoverySpi, GridJmsDiscoverySpi, GridMailDiscoverySpi, GridMuleDiscoverySpi • GridCommunicationSpi – Inter-node communication • Default: GridTCPCommunicationSPI • Others: Same as discovery

  5. Configurable Grid SPIs • GridEventStorageSpi – Local event storage • Default: GridMemoryEventStorageSpi • Others: None • GridCollisionSpi – Timing of execution • Default: GridFifoQueueCollisionSpi • Others:, GridJobStealingCollisionSpi, GridPriorityQueueCollisionSpi • GridLocalMetricsSpi – Provides node metrics • Default: GridJdkLocalMetricsSpi • Othres: None

  6. Configurable Grid SPIs • GridDeploymentSpi – Deploys tasks and class loaders • Default: GridLocalDeploymentSpi • Others: GridUriDeploymentSpi • GridCheckpointSpi – Save intermediate job state • Default: GridSharedFsCheckpointSpi • Others: GridCoherenceCheckpointSpi, GridDatabaseCheckpointSpi, GridGigaSpacesCheckpointSpi • GridFailoverSpi – Handles job failure • Default: GridAlwaysFailoverSpi • Othres: GridJobStealingFailoverSpi, GridNeverFailoverSpi

  7. Configurable Grid SPIs • GridTopologySpi – What nodes are available at any given point • Default: GridBasicTopologySpi • Others: GridAttributesTopologySpi, GridNodeFilterTopologySpi • GridLoadBalancingSpi – Provides best node for job execution • Default: GridRoundRobinLoadBalancingSpi • Others: GridAdaptiveLoadBalancingSpi, GridAffinityLoadBalancingSpi, GridCoherenceLoadBalancingSpi, GridWeightedRandomLoadBalancingSpi • GridTracingSpi – Pluggable tracing • Default: GridJxinsightTracingSpi • Othres: None

  8. Pros / Cons • Pro • Open Source • Highly configurable • Multiple Java Frameworks • Works for many scenarios “out of the box” • CONS • Poorly documented • Small community • May be overkill for small grid projects

  9. DEMO / Question ?

More Related