领导力大挑战
在实施Scrum项目的过程中,Scrum Master的角色是相当关键的,因为他是团队的推动者。本文围绕什么是仆人式领导、仆人式领导的起源、如何将领导力传达给团队、Scrum Master作为仆人式领导者的角色展开叙述,同时重点阐述仆人式领导者应有的基本内外特征。
该内容已经被标记书签!
标记书签错误,请重试!
作者 Srini Penchikala 译者 戴垚 发布于 2007年12月3日
在上个星期,JAVA并行处理框架(JPPF) 项目组发布了1.0版本的第一个发布候选(RC1)。JPPF是一个开放源码的网格计算框架,它可以在一个分布执行环境中同时运行多个java应用。
JPPF架构由客户端,服务器和节点三部分组成。这个架构工作的原则是它将多个任务分配到多个节点上去执行,并在完成所有的步骤之后,重新组合结果并将之发还给客户端。
JPPF也提供了负载平衡,故障转移和错误恢复等服务。并提供一个基于JMX的管理控制台,它既可以监视节点也可以管理执行的任务。你可以远程取消和重启任务,或配置令其超时的截止日期或时间间隔。
JPPF框架使用一个兼容JCA 1.5规范的资源适配器与J2EE应用服务器进行集成,这个适配器为服务器提供了到原始网格服务的访问。适配器通过实现异步任务提交从而避免了JTA事务超时的风险。JPPF支持以下的应用服务器:
InfoQ就JPPF并行处理能力和项目今后的发展方向与创始人Laurent Cohen进行了交谈,Laurent 说他的团队正在计划12月推出1.0版本的GA发布。
针对关于JPPF框架与JDK1.5中的java.util.concurrent API之间的比较,Laurent指出在一个有多处理器的单个机器中,相对于直接使用java.util.concurrent类,JPPF会比较慢。但如果架构在多机器的网络中,相比之下JPPF是一个好的解决方案。在每一个JPPF架构组件内部都使用了java.util.concurrent APIs。其中节点被配置成使用ExecutorService接口来进行多线程处理。
作为java concurrency API的一部分,Java 7将会为细粒度的并行处理的需求引入一个关键特性,即fork-join框架。InforQ问是否JPPF将来会有类似的特性。以下是Laurent的回答:
JPPF正是为此而生的。JPPF接受多个任务,并将之分配到不同的节点执行,最后再将结果重组成合适的格式。从这个角度来讲,我们可以把JPPF看作一个扩展的、分布式的fork-join框架。
关于如何比较JPPF与其他开源的并行处理框架如GigaSpaces,Terracotta和GridGain时,Laurent说:
从范围和功能上来讲,GridGain是与JPPF最相近的开源框架。区别是它们的实施架构:GridGain使用一个peer-to-peer拓扑结构,而JPPF是一个为达到分布处理的多层次架构。
Terracotta有着非常不同的哲学。他们对一个分布式JVM的实现是一个非比寻常的成就,但目前来讲这并不能使它成为一个网格计算框架。在集群和对一些关键特性的提供方面,例如分布式缓存,事务管理,复制等,Terracotta做的非常好。
将JPPF应用在单个组织的局部拓扑中,而用GigaSpaces或Globus Toolkit管理更大的范围,JPPF会和这些框架合作的非常好。
关于JPPF负载平衡的实施细节,他解释说:
应用将任务分组成“任务包(task bundle)”,并将之提交到一个中心JPPF服务器。基于一个动态计算的节点性能概要,任务包被分成子包后发送到每一个节点。子包的大小根据节点的历史性能记录来决定。性能概要被不断的重新计算,所以可以使框架自动适应新的和变化的状况,包括任务的类型和数量,实际在服务器注册的节点数量等。
关于故障转移的能力:
JPPF所有的架构组件都实现了故障转移,它依赖与三个主要的机制:动态拓扑,故障检测和自动重新提交。JPPF组件可以在任何时间以任何顺序在网络中添加或从网络中移除。
Laurent谈到了两个典型的关于故障转移的例子,并解释JPPF如何在这种情况下切换到一个不同的节点。
第一个例子中,一个节点突然停止工作,或失去与服务器的连接。服务器会检测到这个故障,并自动将未完成的工作转移到另外一个节点。
在第二个例子中,客户端失去了与服务器的连接。客户端将自动试图重建连接直到成功,或在一个随意指定的超时到达。同时,一个客户端可以配置多个可连接的服务器,通过将这些服务器组织成一个层次结构来定义一个有效的故障转移策略。客户端这时从这个层次结构中找到下一个服务器,并重新提交工作请求。
关于JPPF框架如何支持应用级安全性的问题,他说JPPF将会以透明的方式使用任何应用使用的安全框架。另外,JPPF节点可以定义一个可配置的安全策略,用来指定客户代码在节点主机上可以做什么和不可以做什么(例如对文件系统的写或读,对其他服务器建立连接等)。
最后谈到JPPF框架将会在未来版本引入的新特性时,Laurent说JPPF将会与业务规则引擎(例如 ILOG Inc. 和 JBoss Rules)和 Web Services进行集成。也将会与ETL,商业智能(BI)和数据挖掘这些分布式处理正在发挥重要作用的领域中的工具进行集成,在这些领域中,需要分布式处理从数据仓库中的大量数据中提取数据。
作为SourceForge.net的一部分,JPPF开始于两年前。它使用Apache License Version 2.0许可证,并可以从SourceForge项目的网站上下载。
查看英文原文:Parallel Processing Framework JPPF offers Load Balancing, Failover and J2EE Integration
在实施Scrum项目的过程中,Scrum Master的角色是相当关键的,因为他是团队的推动者。本文围绕什么是仆人式领导、仆人式领导的起源、如何将领导力传达给团队、Scrum Master作为仆人式领导者的角色展开叙述,同时重点阐述仆人式领导者应有的基本内外特征。
论道WP第三篇专栏,以应用程序栏的使用为中心,包括了软键盘带来的问题、应用程序栏介绍、如何绑定应用程序栏的属性等几个方面的具体话题,为开发者顺利使用应用程序栏开发提供了具体指导。
在多线程并发编程中Synchronized一直是元老级角色,很多人都会称呼它为重量级锁,但是随着Java SE1.6对Synchronized进行了各种优化之后,有些情况下它并不那么重了,本文详细介绍了Java SE1.6中对于锁的性能优化,以及锁的存储结构及升级过程。
本次分享将首先介绍现代富文本编辑器的组成和实现,然后结合UEditor的开发过程,与参会者分享UEditor在设计和实现的过程中,所涉及到的核心功能的细节实现。
本次演讲视频录制于百度技术沙龙。
我们所开发的应用程序大多都需要提供一个图形用户界面(GUI)。关于GUI应用的架构设计,已经有了Form & Control、MVC,、MVP、 Passive View等多种模式。模式可以帮助我们建立优雅的架构,但前提是弄清楚模式的应用场景。弄清楚GUI应用面临的设计上的问题,有助于我们正确的挑选设计方案。
MongoDB是一种非常易用的NoSQL方案,Brian C. Dilley在这篇文章里介绍了MongoDB的优劣势,并介绍了MJORM项目。MJORM用于MongoDB,是一个没有注解的Java ORM库。
随着网络基础设施的逐步成熟,从RPC进化到Web Service,并在业界开始普遍推行SOA,再到后来的RESTful平台以及云计算中的PaaS与SaaS概念的推广,分布式架构在企业应用中开始呈现出不同的风貌,然而殊途同归,这些分布式架构的目标仍然是希望回到建造巴别塔的时代,系统之间的交流不再为不同语言与平台的隔阂而产生障碍。
没有回复
关注此讨论 回复