`
piperzero
  • 浏览: 3518418 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

使用开源Grid平台-GridGain实现网格计算

阅读更多
<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog.html" frameborder="0" width="728" scrolling="no" height="90"></iframe>

网格计算一般分为两种:数据网格和计算网格,简单的说数据网格就是把数据分布式存储,计算网格就是将任务分解为子认为并行计算。

一个计算网格平台的作用就是将任务分解开来,交给不同的结点机器运行,然后把运行结果汇聚起来。这就是Split and Aggregate。如下图所示,一个job请求分解为三个sub-job,分别被不同的机器执行,然后把结果汇聚,返回给调用的客户。

GridGain是一个开源的java网格平台。它集成了很多现成的框架,例如

JBoss
Spring
Spring AOP
JBoss AOP
AspectJ
JGroups

GridGain有两个方法将应用程序grid化:

第一种是使用AOP

假设有一个应用

01classBizLogic{
02publicstaticResultprocess(Stringparam){
03…
04}
05}
06
07classCaller{
08publicstaticvoidMain(String[]args){
09BizLogic.process(args[0]);
10}
11}

如果要把process grid化,只要简单的使用一个@Gridify的annotation即可,在Caller客户端要启动GridFactory

01classBizLogic{
02@Gridify()Here
03publicstaticResultprocess(Stringparam){
04…
05}
06}
07
08classCaller{
09publicstaticvoidMain(String[]args){
10GridFactory.start();Here
11
12try{
13BizLogic.process(args[0]);
14}
15finally{
16GridFactory.stop();Here
17}
18}
19}

这是最简单,不破坏原有业务逻辑的方法,还有一种方法如果要实现复杂些的任务分解,扩展GridifyJobAdaptor基类,实现split 和aggregate 接口,具体请参考http://216.93.179.140:8080/wiki/display/GG10UG/15-Minutes+Jump+Start




分享到:
评论

相关推荐

    JAVA开源框架-汇总.doc

    GridGain —— Java开源网格计算平台 - **概述**:GridGain 是一个高性能的分布式内存数据网格平台,基于Apache Ignite构建。 - **主要特性**: - 支持大规模数据处理和实时计算。 - 高可用性和容错能力。 - ...

    用Scala和GridGain实现云计算

    因此,使用云计算和网格计算技术不仅能够解决传统方法无法解决的问题,还能实现统一的编程模型,从而使得程序能够从移动设备扩展到成千上万台服务器。 #### 四、GridGain概览 GridGain是一个强大的平台,它集成了...

    gridgain-platform-6.0.3.zip

    标题 "gridgain-platform-6.0.3.zip" 暗示了这是一个关于GridGain平台的软件包,版本为6.0.3。GridGain是一个高性能的分布式内存数据网格,常用于构建大规模分布式应用程序,特别是在大数据处理、实时分析以及云计算...

    akka-persistence-gridgain-experimental:使用GridGain作为底层技术的akka​​-persistence实验期刊

    (我没有使用 akka 实验 tck,因为它测试了我没有实现的不推荐使用的方法。这确实需要修复。) 计划该期刊还有很多工作要做,以查看它正在测试的想法是否可行。 大致的优先顺序,路线图是: 确定持久性策略(文件...

    gridgain-streaming-6.1.6.zip

    标题中的"gridgain-streaming-6.1.6.zip"是指GridGain Streaming 6.1.6版本的压缩包文件,这是一个专为大数据处理和实时流计算设计的平台。GridGain是Apache Ignite的一部分,它提供了分布式内存计算框架,允许在...

    Grid.rar_Java编程_Java_

    为了实现网格计算,Java提供了一些开源库和框架,例如GAIA(Global Grid Application Infrastructure Abstraction Layer)、GridGain或Jini。虽然在描述中没有明确指出使用了哪个框架,但开发者可能借鉴了这些项目的...

    Open Source Grid Computing For Java-开源

    GridGain是创新的网格计算产品。 它结合了开放源代码,强大的Java 5基础和对计算网格的明确关注的优势。

    在Myeclipse上写GT4服务

    5. **打包与部署**:将服务打包成JAR或WAR文件,然后部署到GT4服务运行的环境中,如GridGain、Hadoop等网格计算平台。 对于初学者来说,理解GT4服务的生命周期、服务注册与发现机制、以及如何处理分布式环境中的...

    ignite-go-client:Apache Ignite(GridGain)Go语言客户端和SQL驱动程序

    点燃客户适用于Go编程语言的Apache Ignite(GridGain)v2.5 +客户端该库已准备就绪。 版本低于v1.0,因为尚未实现所有功能(有关详细信息,请参见)。 但是已实现的功能已准备就绪。要求Apache Ignite v2.5 +(由于...

    Java与云计算2022优秀文档.ppt

    云计算的出现是并行计算、分布式计算、网格计算、虚拟化、效用计算等技术发展的结果。它将计算资源抽象成“云”,用户只需关注服务的使用,而非资源的管理和维护。先驱者如Google、Yahoo、IBM、Microsoft、Amazon等...

    ignite-book-code-samples:使用Apache Ignite进行本书的高性能内存计算的所有代码示例,脚本和更深入的示例。 请使用Ignite 2.6或更高版本的存储库“ the-apache-ignite-book”

    "ignite-book-code-samples"这个压缩包包含了《使用Apache Ignite进行高性能内存计算》这本书中的所有代码示例,这些示例将帮助读者深入理解如何利用Ignite的强大功能。 Ignite的核心特性之一是其内存数据网格,这...

    云计算编程模型中Java应用研究.pdf

    Java的网格计算框架如GridGain,可以整合异构资源进行大规模计算。JVM的虚拟化特性确保了Java的跨平台兼容性,而即将推出的Java 8及其后续版本计划增加对模块化、多租户支持以及大数据、云和移动计算的增强,这...

    hadoop-lzo-master.zip

    Hadoop-LZO是一款专门为Apache Hadoop设计的高效数据压缩库,它基于开源的LZO压缩算法,旨在提高Hadoop生态系统中的数据存储和处理效率。在大数据领域,压缩技术是至关重要的,因为它可以显著减少存储需求,加快数据...

    Apache Ignite内存数据组织.rar

    Ignite来源于尼基塔·伊万诺夫于2007年创建的GridGain系统公司开发的GridGain软件,尼基塔领导公司开发了领先的分布式内存片内数据处理技术-领先的Java内存片内计算平台,今天在全世界每10秒它就会启动运行一次。...

    ParallelComputing

    Java GridGain和JPPF是两个用Java实现的网格计算框架。 在“ParallelComputing-master”这个压缩包中,可能包含了上述技术的示例代码、测试案例和相关文档。通过研究这些内容,开发者可以深入理解如何在Java中实现...

Global site tag (gtag.js) - Google Analytics