写点什么

并行处理框架 JPPF 1.1 支持多路复用及 JMX 监测

  • 2008-04-12
  • 本文字数:1483 字

    阅读完需:约 5 分钟

JPPF 是一个基于 java 的开源并行处理框架,其最新版包含一个叫做 TCP 端口多路复用(TCP port multiplexer)的网络工具,它使得 JPPF 可以在安全的防火墙环境下工作。JPPF 小组发布的 1.1 版还包含了基于 JMX 的节点监测和管理特性。

由于 JPPF 框架通信层固有的设计,在其最新版本之前尚不存在任何简单的方式得以将 JPPF 集成到安全的网络环境中。JPPF 至少需要 3 个独立的 TCP/IP 端口才能正常工作,然而很多防火墙只允许一个单独的端口。这样以来,防火墙通过阻止在未授权的端口上的传输进而对网络通信进行限制。

新的 TCP 多路复用通过一个单独的端口来路由来自多个端口的网络传输,以此突破防火墙端口限制。它可以通过 SSH 或者其他任何支持 TCP/IP 传输的协议来进行多路——多路(multiplexer-to-multiplexer)的传输。它还能将信息从一个单独的端口路由到网络另一端的多个端口。

最终的结果就是 JPPF 组件基本还会以之前的方式工作,唯一不同的是,他们将连接到本地的多路实例而非远程的 JPPF 服务器。这对安全性要求极高的环境的 JPPF 部署敞开了大门,使之无需再部署复杂的硬件 / 软件设备。

TCP 多路复用工具是 JPPF 组件(客户端、服务器及节点)中的较为独立的一个,因此无需对现存的 JPPF 客户端做任何改变就可以投入使用该多路复用工具。每个多路复用器实例都被部署为单独的进程。

多路复用器的第一个版本出现在 JPPF1.1 发布中,它提供的基本功能当前仅服务于 JPPF 传输。在将来的版本中,还会有另一个“特色(flavor)”将服务于任何 TCP/IP 传输。这使得用户可以与非标准端口的 web 服务器交互,还能直接对防火墙后的 J2EE 服务器进行 EJB 调用。TCP 多路复用器的未来版本还将具备应用独立开发的过滤器激活能力:

  • 多路到多路的数据的编码 / 解码
  • 在更高层协议中的封装,例如与 HTTP 与 SOCKS 代理协同工作

JPPF 中其他的新特性如下:

  • 增加了一个新的节点管理特性,这可以动态地更新一个节点的执行线程池。
  • 增加了一个基于 JMX 的节点监测特性。这使得管理员可以收集如节点的系统和 java 环境细节之类的统计数据。

节点监测特性用来获取如下信息:JVM 状态、系统和环境变量、可用的 CPU 等等。我们可以通过 JPPF管理控制台来得到这些统计数据。从GUI 控制台还能查看到如下信息:节点状态、任务执行状态(任务是否已被执行)、执行的任务量等等。从管理控制台可以取消或者重启特定的任务。

对于系统的负载问题,管理员和开发者可以看到节点运行环境的概况及其当前状态。 我们可以通过JPPF 监测控制台及专门的API 来获得这些信息。

JPPF 小组的 Laurent Cohen 说这是为下一个主要版本中的一个新特性所作的铺垫,该新特性将帮助用户和管理员控制何时、何地及如何执行 JPPF 任务。JPPF 任务将与一个可以获得节点信息并对任务执行条件提供精确定义的“执行策略”相关联。

JPPF 项目未来的发展路线还包含了一些主要的集成工作:与 Gigaspaces 的集成以应对计算密集型的具有高容量事务的企业应用,以及与业务规则引擎的集成。其他的集成还将包括:业务流程处理(Business Process Management,即 BPM)及 Extract、Transform 与 Load(ETL)框架。当然,路线中还包括了向 JPPF 网格工具箱中添加多代理系统的能力。

查看英文原文: Parallel Processing Framework JPPF 1.1 Supports TCP Multiplexer and JMX Monitoring


译者简介:张龙,同济大学软件工程硕士,现就职于理光软件研究所。主要从事文档工作流和办公自动化解决方案的研发工作。热衷于 Java 轻量级框架的研究,对敏捷方法很感兴趣。曾有若干年的 J2EE 培训讲师经历。参与 InfoQ 中文站内容建设,请邮件至 china-editorial[at]infoq.com

2008-04-12 19:501508
用户头像

发布了 88 篇内容, 共 272.6 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

[计算机网络1]我所知道的关于TCP的一切

海神名

TCP 计算机网络 网络协议 原理

译文MapReduce:大型集群上的简化数据处理

海神名

mapreduce 译文 MIT 分布式计算

leetcode20.有效的括号

Damien

算法 LeetCode

leetcode1137:第 N 个泰波那契数

Damien

算法 LeetCode 斐波那契

百度开源项目

Bruce Duan

游戏夜读 | 做游戏选什么专业?

game1night

缘起:很久很久以前

escray

学习 测试驱动开发实战营

我的关注清单

lmymirror

知识管理 关注清单 RSS

树莓派小车系列-直播

波叽波叽啵😮一口盐汽水喷死你

树莓派 ffmpeg 云直播 盐汽水 raspberry

架构师们必备的三三制需求分析思维模型

常平

每天一道 python 面试题 - Python中的元类(metaclass) 详细版本

志学Python

python 爬虫 python元类

CEPH OSD Down故障分析与处理

木子

Netty 源码解析(五): Netty 的线程池分析

猿灯塔

File类的文件操作

Howe

Java File 文件 io

源码浅析 - CocoaLumberjack 3.6 之 DDLog

Edmond

ios log4j CocoaLumberjack SourceCode DDLog

大家看看我这个斜杠青年够斜吗?

伯薇

个人成长 斜杠青年 能力提升 好奇心 T型人才

阿里29大开源项目看看你都用过哪些

Bruce Duan

思维偏差与产品设计的关联思考

石君

产品设计 思维方式 安全产品设计

哲少荐书:这才是心理学

Jackey

心理学 读书

我愿沉迷于学习,无法自拔(三)

孙瑜

深度思考 程序员 感悟

Java并发编程系列——线程池

孙苏勇

Java Java并发 并发编程 多线程 线程池

我看拼多多黄峥:旧世界瓦解冰消

池建强

拼多多 黄峥

轻轻一扫,立刻扣款,付款码背后的原理你不想知道吗?

楼下小黑哥

支付宝 微信支付 支付系统 付款码

虚拟化Pod性能比物理机还要好,原因竟然是这样!

亨利笔记

Kubernetes 容器 k8s vSphere pod

DDD 实践手册(3. Entity, Value Object)

Joshua

系统设计 领域驱动设计 系统架构 架构模式

高仿瑞幸小程序 02 创建Tabbar

曾伟@喵先森

小程序 微信小程序 大前端 瑞幸

扩展Redis:增加Redis命令

心平气和

redis

科学治疗“知识焦虑症”

陈驰远

个人成长 知识管理

用 Vim 编辑 Markdown 时直接粘贴图片

mzlogin

vim markdown

下一个阶段,就真的容易了吗?

ke_lv

生活

企业如何选择物联网中台

老任物联网杂谈

物联网中台 IOT Platform 物联网平台

并行处理框架JPPF 1.1支持多路复用及JMX监测_Java_Srini Penchikala_InfoQ精选文章