因并发而生 因云计算而热:Erlang专家访谈实录(1)

Erlang并行计算

主持人 : 我们目前谈到了很多Erlang在语言特性方面的问题,我们知道Erlang最大的特点是分布式、并行计算的特性,有人说如果一门语言不能很好地处理并行计算的问题,将来很可能会失去生存的权利,二位对于这个观点怎么看?

赵东炜 : 我分成两个部分来说,第一个是现在的计算环境已经到了云计算、多核计算、分布式,已经是一个常态,如果一个语言不能很好地处理并行计算的问题,它肯定会出问题。我觉得它不能够说是一个很伟大的语言,至少是不能够担当大任。第二个部分,未来也不是很绝对的,未来这个计算的模式会继续发展,有可能会出现这样的情况,有一个很成熟的计算框架,大家仍然用之前的语言,它不去处理并行计算,它运行在这个框架之上,这个框架本身把并行计算、并发、容错解决好了,你的语言不需要关注这些问题。实际上这些问题不是你不关注,而是别人帮你处理好了。从这个角度上来说,这个语言也没有死掉。

成立涛 : 语言环境在不断地发展,任何的环境不可能永远处在一个位置上。目前学习Erlang对于我们开发和对于目前环境的理解有很大的帮助。

主持人 : 是因为它解决问题的目标很明确?

成立涛 : 对,比如说我们以后还用自己的思想、方法做,下面有很多的底层的封装,这些封装也是有人做的,我们通过Erlang可以了解下面是怎么做的,用什么方式来实现这种效果的。

赵东炜 : 这种底层的封装很可能用Erlang语言来写。像目前Erlang的DB就是用Erlang来写的,等于是它提供了一种基础设施,你上面用什么语言就用什么语言。

Erlang与云计算

主持人 : 现在云计算是一个热门话题,请赵老师给我们详细地介绍一下云计算,您认为云计算是一个什么东西?它有哪些优势?

赵东炜 : 我认为云计算分成两个部分来看,一个是商业的部分,商业的部分是各家有自己的理解,我认为这是比较浮的一部分,它现在看不清楚一个具体的状况。

从技术的层面来讲,云计算本身关注一个是容错,是个分布,另外一个是在多核系统上运行。它其实就关注这三个技术核心的问题。

对于云计算提到了一个伸缩性的问题,实际上云计算对于我们目前主流的工业语言在伸缩性上的问题的总爆发。目前大部分的语言写的软件,它在去掉伸缩的时候,就不会很好地解决这个问题,云计算试图提供这么一种架构,在这种架构之上,你可以比较平滑地过渡到伸缩的语言环境。

这是我对于云计算的个人理解。Erlang本身设计的目标就是刚才我们提到的这三个东西,一个是容错,一个是并发,另外一个是多核。实际上,在这三点上已经非常完美地贴到了云计算的目标,这是从技术的层面来讲。对于Erlang来说在云计算非常有优势,那么云计算实际上主要的优势就是它的成本很低。不仅是我初期投入的成本很低,我的服务是按照我的使用来付费的,不仅是我初期的费用很低,而且我系统要扩张的时候,比如说我成百倍、上千倍来扩张的时候,我投入的费用也很低。像目前的金融微机,我觉得实际上对于云计算是一种很好的机会。

主持人 : 成老师怎么看云计算?

成立涛 : 我觉得我们搞程序的人都是这么一种感觉,比如说在自己的公司,我们需要上某个项目的时候,我们需要购买很多的服务器,需要网管人员去运维,可能会出问题。我们希望将来云计算的方面由第三方来提供,我可以保证你的需求,你们的服务质量我们都可以满足,比如说你的带宽、容量都可以满足。这也是为了节省企业成本,充分利用资源也是主要的优势。

主持人 : 我觉得云计算在实现上应该分基础的硬件、基础设施,比如说它的并发、安全、负载,还有就是应用层。那么,Erlang主要是针对基础设施那个层面来实现的是吗?

赵东炜 : 也不完全。Erlang目前来说比较适合看到用它来做一个云出来,用它来实现一个云,可以看到有这样的例子。但是,从这个代码本身来讲,它要做应用的时候,Erlang本身也是很有优势的。我们刚才提到,它的代码写起来非常简洁,而且它本身自己就很适应云计算这种环境。

成立涛 : 既可以做基础的架构方面的实现的基础服务,也可以做上层的应用,两者都可以。

主持人 : 云计算现在比较热,大家一直在炒,二位老师有没有在亚马逊和Google的平台做过项目?

赵东炜 : 我自己曾经在亚马逊的EC2的平台上面做一些尝试,我现在也在做一些小东西,我觉得它离我们理想的云计算的目标有一定的距离,主要欠缺在哪里呢?你刚才提到了存储和资源的管理,但是上面还有一个应用的问题,应用本身还有一个应用框架的问题,这个部分目前是欠缺的。我觉得这个部分可能需要一段时间的竞争,慢慢浮现出一个很不错的应用框架,这个应用框架要是一个开放的,而且是兼容的。我觉得现在的云计算离这个目标很远,主要是这个方面有所欠缺。

比如说我很简单地开发一个东西,可以在这家的云上跑,也可以在那家的云上跑,这个目标很难实现,因为现在很多的都是厂家绑定的,而且各个厂家的解决思路都不一样。这是目前它发展的制约因素,我认为这个因素在很短的时间内会有所突破。

主持人 : 成老师有关于云计算的项目吗?

成立涛 : 我以前有一个Erlang所书写的框架,关于集群这方面,允许你在亚马逊的EC2上建立一些自己的节点,我们可以进行处理,那方面如果有一些了解的话,具体的项目暂时还没有用到这方面的东西。但是,我也是在自己写一些东西,可能也会在不久的将来申请使用它。

云计算展望

主持人 : 如果有一天云计算普及了,至少我们的IT环境会变成一个什么样的?请二位老师展望一下。

赵东炜 : 我不知道未来会是什么样,但是我们预先想象一下,最先被裁掉的部分是我们的大量的IT部分,因为我们现在有大量的SA来维护我们大量的服务器,这个工作可能以后不需要我们自己来做了,这个部门的人数会精简下来,我们目前看到有可能是这样子的。

主持人 : 这还是基础设施方面,讲到应用它会给我们带来什么好处?

成立涛 : 对于一般用户来说是比较透明的,对于我们开发人员来说,我们可能更加需要遵循一些标准和协议,怎么样和第三方交互、通信,我们会更加专注编写一些应用,而不是非常庞大的系统。

主持人 : 云计算给我们带来的好处还是很多。从现在来看,云计算距离我们还有多远?在实现方面云计算还有哪些问题?

成立涛 : 我感觉一个口号特别热的时候,就是快要来临的时候,所以云计算现在是刚到,还不是太成熟,在一些标准、安全、服务方面还没有做到统一。但是,我觉得这些方面应该不久的将来很快就会做出一些统一、实现,应该会比较快。

主持人 : 赵老师怎么看?

赵东炜 : 我觉得目前云计算从技术的角度来讲,它其实问题已经不多了,基本上可能就是一些市场上竞争方面的问题。我是比较乐观的,我觉得云计算离我们并不很遥远,我觉得需要解决的问题是大家的信心问题,或者是需要有一个杀手级的应用,出来以后大家都觉得云计算可以,没有问题。之前大家对于云计算的安全性有所担忧,担心数据存放在云里面会不会不安全。实际上,这是一个有点问题的问题。比如说我们现在的钱都存在银行,那么通过网上银行就能够随便地访问它,我们也没有觉得很大的不安。我觉得这个需要客户的信心慢慢培养起来,那么它就会迅速地得到普及。

主持人 : 那么在云计算的普及中,Erlang处于什么位置?会给云计算带来哪些实现上的好处?

赵东炜 : 前面我们讲到了,Erlang在设计目标上和云的设计目标是非常契合的。实际上它经过的20多年的发展已经非常成熟,刚才成立涛也讲到了,Erlang已经走了很远。对于云计算来说是Erlang是在手边就可以用的工具,而且有很多的例子可以告诉你,你对它会比较放心。你用其他的技术,可能对于未来会比较担心,或者不是很确定。

Erlang对于云计算的优势在于此,就是它很成熟,而且整个的计算模型是非常符合云计算的。它的优势目前来说,很难在短期之内有另外一个技术能够超越它。

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭