网格编程中的高阶组件(HOCs):挑战与解决方案
1. 现有网格中间件的现状与不足
在网格计算领域,当前使用的中间件技术有许多实用且互补的特性,用户可以根据应用需求组合这些技术。例如,Globus容器是许多不同网格应用的合适中间件,除了托管Web服务外,它还提供异步通信和应用状态维护等功能。像Globus资源分配管理器(GRAM)的WS - GRAM服务,可用于提交使用MPI等进行通信的程序,但提交的程序无法从服务器端提供的可重用组件中受益,需自行处理所有应用需求。
然而,现有中间件技术存在明显不足。组合多种技术要求用户熟悉每一种单一技术,很难期望每个应用程序员都成为网格中间件专家。与Web应用服务器相比,网格中间件系统的学习曲线更陡峭,因为大多数简化Web应用开发的工具无法用于网格应用编程。而且,Web应用开发工具对网格架构中的应用帮助不大,系统的大部分在容器外部运行,容器仅作为访问点。因此,尽管网格中间件开发进展迅速,但缺乏可重用组件和将它们组合成应用的工具仍然是该技术的严重缺陷。
1.1 中间件用户的职责
开发一个具备远程访问组件、本地增强通信等功能的网格应用时,直接使用中间件的程序员需要做的工作比实现传统高性能计算(HPC)应用要多得多:
- 实现应用逻辑 :这要求程序员成为应用领域的专家,例如模式识别领域。
- 实现并行处理应用的远程组件 :需要程序员精通并行处理策略和所使用的通信技术,如RMI或MPI。
- 部署用于访问网格中组件的Web服务 :要求程序员成为中间件技术和用于容器配置的基于XML格式的专
超级会员免费看
订阅专栏 解锁全文
14

被折叠的 条评论
为什么被折叠?



