技术聚会
作者:左轻侯
2194字节
点击:13754
回复:819
所属分类:技术随笔
创建时间:2008-12-14 01:49:13
最后修改时间:2008-12-14 01:49:13
讨论的东西很多,匆匆记录下来的有三:
1 分布式计算
很多人认为EJB已经过时,但我认为EJB仍然有不可替代的地位,并且举了一个典型的分布式应用场景为例。老宋认为分布式对象的协议完全可以用web service实现,我指出,web service虽然已经有了事务安全的规范,但实际应用尚待普及。Aimingoo(还是另一位?)则认为分布式对象的粒度太细,是走错了方向。我觉得事务安全的web service是SOA普及的基础,但好几个人都不同意。这个问题没有深入讨论下去。
讨论到两阶段提交,马上有人提到程立在SD2C上做的演讲。最后大家比较一致认同的是,当前阶段,现实中需要两阶段提交的应用,基本都是用山寨解决方案(主要是事后核查)搞定的,所谓“拼拼凑凑做事务”。
2 云计算
云计算的定义是什么,这次也没讨论出一个所以然来。有人认为,云计算应该和存储区分开来,就定义在纯粹的计算能力,但也有人认为云计算是应该包括计算和存储的。Aimingoo认为,应该区分具体服务与云计算,具体应用即使是大规模分布式的运算,也不能称为云计算,因为云计算应该是general purpose的。
我比较认同的云计算概念是:一系列逻辑意义上的计算机,可能是VM,也可能是物理服务器,但这对于用户来是完全透明,用户既不关心,也不能控制。这些计算机向用户提供通用的计算能力,并且保持极高的稳定性,因为故障处理、系统热转移和负载均衡都是后台提供的,对用户透明。
但这种概念也不一定是正确的,因为根本没有一个权威机构发表一个权威定义。
老孟列举了云计算的三种典型,即amazon、GAE和MS的解决方案。其中MS的方案最为完备,但尚未实现……
一个小道消息是,百度的后台不是云计算的,但这一两年正在往云里面改,具体成效未知。但我更感兴趣的是,百度在没有云计算的情况下,是怎么实现google量级的数据处理的。
3 BPM
近来BPM有渐热的趋势,IBM/BEA/Oracle都在推各自的解决方案。国内也有各种山寨版的解决方案,虽然完备上有所不如,但在解决实际问题的能力似乎犹有过之。老宋近年来致力的X5就近乎此。
BPM的概念也一直处于含糊不清的状态。我个人的理解,BPM最简单的定义,就是增强的workflow(加上BAM/Rule Engine/Process Designer等等)加上EAI。简单的workflow只处理业务流程的自动化,然后将某些部分发布为服务,再通过ESB暴露出去,这就达到了BPM的层次。
我提出,BPM是SOA的前提。因为只有业务流程本身已经信息化,才可能作为服务发布。老宋深以为然。
BPM在国内之所以一直推不起来,是因为国内的信息化水平仍然太低,大家都还处于解决具体业务问题的层次。在未来的3~5年,随着各个行业的信息化水平的提高和IT环境的复杂化,BPM/SOA可望在国内得到大的发展。