网易首页 > 网易号 > 正文 申请入驻

世界上最低调的编程语言,高并发的王者,程序员翻身的秘密武器!

0
分享至

1998年,爱立信推出了一款著名的交换机AXD301, 这款交换机实现了惊人的9个9(99.9999999%)的可用性。

一般的系统,实现5个9,即一年停机5分钟已经相当不错了,9个9意味着20年的运行时间内只有0.631秒的停机时间。

实现这个奇迹的关键就是爱立信发明的编程语言Erlang

Erlang的作者Joe Armstrong在采访时说道:

如果Java是“一次编写,到处运行”,Erlang就是“一次编写,永远运行!

奇怪的是,这么一个神奇的语言,爱立信竟然禁止在公司内部使用了,这是为什么呢?

0 1

起源

Erlang的诞生其实是个挺无奈的过程。

最早的时候,爱立信只想找到一个语言,更好地构建下一代电信系统。

Joe Armstrong等人拿着一个大“筛子”,把20多种语言“筛来筛去”, 标准是:

1.为了提高生产率,要选择高级的声明式语言

2.为了支持高可用的电信系统,在语言层面就得支持并发和错误恢复

第一条“筛”掉了C、PASCAL, Ada, C++等语言,第二条又筛掉了Lisp, Prolog,Parlog等语言。

没办法,只好自己发明一个新语言了,这就是Erlang。

Erlang的核心是“进程”,每个进程使用消息和其他进程进行通信,每个进程有个邮箱可以存储消息,进程通过检查邮箱的消息,然后采取行动,这其实就是现在的Actor模型。

大家也能看出来,Erlang的进程不是操作系统中常说的进程,它非常轻量级,每个进程的开销只有几百个字节,一台服务器可以轻松地支持几百万个进程同时运行。

进程可以是分布式的,可以跨越网络来互相发送消息,添加服务器就可以轻松扩展。

Joe Armstrong还在Erlang中内置了“弹性”的能力,当一个进程崩溃时——不管是因为Bug还是硬件故障——都不会导致整个系统崩溃,这对电话交换系统来说非常重要。

2

艰难发展

新语言的推广是非常困难的。

有爱立信员工听说了Erlang这个新语言,就在一个原型系统中尝试了一下,他们惊奇地发现,这个新玩意儿开发起系统来,比其他方案要快得多。

但即使如此,Erlang依然没法大范围地在爱立信铺开使用,更别说普及到全世界了。

Joe Armstrong和团队想了很多办法进行“促销”,比如写书,召开会议,把Erlang移植到DOS、Windows、Mac、VxWorks等各种平台。

他们甚至录制了一个小电影做宣传。

1995年,Erlang终于迎来了转机。

爱立信公司计划开发新一代的交换机产品,以分组交换形式进行语音、数据和各种宽带服务的通信。

但是这个项目实在太复杂了,最早用C++开发,很快就陷入了巨大的泥潭,濒临崩溃。

这时候,大家想到了Erlang,死马当做活马医,用它来救场吧。

Erlang不负众望,顺利帮助团队完成了交换机的开发,这就是文章开头提到的AXD301。

有意思的是,这么优秀的编程语言,爱立信竟然把它禁掉了,禁止内部使用!

原因居然是电信产品生命期长,维护一个自己专有的语言成本很高,不如采用全世界都用的编程语言!

这个禁令一出,为Erlang付出大量心血的Joe Armstrong等人大为震惊,没办法,只好游说公司开源Erlang。

1998年12月,Erlang正式开源,团队的初始成员也离开了爱立信,成立了自己的公司Bluetail,致力于Erlang的开发。

Erlang离开了电信领域,进入广阔的互联网市场。

3

大放异彩

2009年1月,雅虎前员工Jan Koum买了一部iPhone手机,他想到了一个点子:为什么不开发一个App,通过互联网来发送消息呢?

传统的方式是短信,资费高,还有流量限制,这很不爽。

于是他拉来了雅虎的同事Brian Acton一起干,互联网用户的特点那就是用户数极多,并发数极高,两人经过研究,发现Erlang简直就是处理大规模消息的不二之选,后台开发就它了!

2009年1月,WhatsApp诞生。

WhatsApp一经推出,用户便迅猛增长,如今在全球已经拥有了20亿活跃用户。

2014年,Facebook斥资190亿美元收购了一个叫做WhatsApp的软件,震惊业界。

此时的WhatsApp,已经有了4.5亿用户,并且每天以100万在增长。

但是,让人吃惊的是,WhatsApp只有32名工程师,负责服务器后端开发的程序员只有10人

这么惊艳的成绩,Erlang可以说是功不可没!

4

向Web进军

虽然Erlang性能卓越,但是它的函数式编程的语法却并不为大众所熟悉。

一个叫Jose Valim的巴西人觉得Erlang, OTP, Beam VM这样的好东西,广大的码农群众不能使用真是太可惜了。

Jose Valim是Ruby on Rails的核心开发人员,深受Ruby社区的影响。

于是大神出手,借用了Ruby简洁优雅的语法,把Erlang和OTP进行了包装,创建Elixir这门新语言。

以Elixir为基础,Jose Valim等人还开发了一个新的Web框架Phoenix,方便程序员使用Elixir进行Web应用的开发。

许多创业公司使用了Elixir和Phoenix快速构建应用,尤其是高并发,实时的应用,其中最著名的是Discord。

Discord的CTO在2017年的一篇文章中说道:

Discord 就是 Elixir 的早期采用者, Erlang VM 是我们想要构建的高并发实时系统的完美候选者,过去两年,系统中的并发用户数已达到近 500 万,每秒有数百万个事件...... 如果让我从头再选择一次的话,我还会选择Elixir

5

Erlang为什么不流行?

看到这里,你脑海中很可能会浮现这个问题:

你把Erlang吹得天花乱坠,为什么它还无法成为Java这样的主流语言呢?

有位Lisp大佬Richard P. Gabriel说得很有道理:Worse is better。

大佬说软件设计有四个目标:简单性,正确性,一致性,完整性。

在软件设计上有两大流派:MIT流派(以Common Lisp和Scheme为代表)和新泽西流派(就是贝尔实验室,以Unix和C语言为代表)。

MIT流派认为设计一定得正确,接口一定得简单,为了这两点,实现层面复杂一点也没关系。

而新泽西流派则反过来,认为简单性比正确性更重要,尤其是实现的简单性比接口简单性更重要。

这带来的结果就是:Unix和C语言具备简单的结构,易于移植,运行时只需要很少的资源,虽然他们只能提供操作系统和编程语言50%~80%的功能,还是能够像病毒一样,疯狂传播。

因为Unix和C解决了痛点问题,大家可以轻松接受,并且由于实现的简单性,很容易和别的平台和软件整合,用户还会不断修改它们,完善它们。

而Erlang,很抱歉,它是典型的MIT流派,这是个设计精巧、实现复杂的系统,一旦它不能满足特定需求,想在保证正确性和简单性的同时对它进行修改,非得是高人不可,这一点严重阻碍了Erlang的传播。

那Erlang真的不好吗?

不,这要看这要看谁在使用它,WhatsApp和Discord就是典型案例,在这里Erlang和Elixir发挥了极大的威力,遥遥领先竞争对手。

Paul Graham在《黑客与画家》的“拒绝平庸”这一章也说过,他用一个小众语言Lisp开发了一个电子商务的网站ViaWeb,利用Lisp强大的宏,定制出电子商务领域的DSL,让Viaweb开发速度飞快,他们不断推出新功能,让那二三十个使用C语言和Perl的竞争对手目瞪口呆。

跟随主流不会出错,但是要想迅速脱颖而出,你得采用那些有点难度的但是生产力惊人的语言,从这个意义上来说,Erlang/Elixir很可能是击败普通人的秘密武器。

全文完,如果觉得不错的话,点一个“在看”或者“赞”吧!

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
38岁孙俪陪女儿练恰恰舞连续岔气三天,瘦腰效果是真的娘娘也有被恰恰舞制裁的一天

38岁孙俪陪女儿练恰恰舞连续岔气三天,瘦腰效果是真的娘娘也有被恰恰舞制裁的一天

老吴教育课堂
2026-08-22 00:08:44
上海13岁女儿不够独立,半夜总跑去和爷爷睡,母亲推开门当场崩溃

上海13岁女儿不够独立,半夜总跑去和爷爷睡,母亲推开门当场崩溃

温情邮局
2025-04-09 16:55:04
香港知名女星退圈多年风韵犹存,嫁印度籍老公,40岁高龄生女

香港知名女星退圈多年风韵犹存,嫁印度籍老公,40岁高龄生女

蹲坑看世界
2026-08-21 10:09:40
青岛女游客拍照被骂6分钟,跪地求饶都没用,警方终于出手了

青岛女游客拍照被骂6分钟,跪地求饶都没用,警方终于出手了

社会日日鲜
2026-08-21 11:06:29
一天4个瓜!负债600万、承认恋情、公布怀二胎,赵丽颖出乎意料

一天4个瓜!负债600万、承认恋情、公布怀二胎,赵丽颖出乎意料

北海史记
2026-08-21 14:16:33
本硕博全撤!北京户口注销,国企工作丢了,哥哥:被弟弟毁了一生

本硕博全撤!北京户口注销,国企工作丢了,哥哥:被弟弟毁了一生

新一说史
2026-08-19 06:26:55
泽连斯基:战事爆发以来,遭遇“最荒诞又最大规模”攻击

泽连斯基:战事爆发以来,遭遇“最荒诞又最大规模”攻击

凤凰卫视
2026-08-21 14:14:08
从巅峰到全面崩溃,森林北败得毫无悬念,汪峰惯用伎俩:先结账后抽身,这算盘打得妙

从巅峰到全面崩溃,森林北败得毫无悬念,汪峰惯用伎俩:先结账后抽身,这算盘打得妙

阿废冷眼观察所
2026-08-22 02:19:54
许家印被判无期!马云的12亿要不回来了:被老许忽悠 把他当兄弟

许家印被判无期!马云的12亿要不回来了:被老许忽悠 把他当兄弟

念洲
2026-08-20 19:56:17
宋子文晚年选择吐露实情:西安事变护送蒋介石抵南京当日,叛徒并不是张学良,这个名字藏了35年,再不说就要随同自己入土了

宋子文晚年选择吐露实情:西安事变护送蒋介石抵南京当日,叛徒并不是张学良,这个名字藏了35年,再不说就要随同自己入土了

唠叨说历史
2026-08-04 17:10:49
超强台风级!又一新台风生成!广东启动防风应急响应!明天起,东莞天气大反转......

超强台风级!又一新台风生成!广东启动防风应急响应!明天起,东莞天气大反转......

东莞好生活
2026-08-22 00:10:33
许家印无期!奢靡生活被扒:3架专机、700万抽雪茄、200人歌舞团

许家印无期!奢靡生活被扒:3架专机、700万抽雪茄、200人歌舞团

阿讯说天下
2026-08-22 05:19:26
许家印的无期判了,超1万亿供应商欠款,正在拖垮大量实体企业

许家印的无期判了,超1万亿供应商欠款,正在拖垮大量实体企业

王新喜
2026-08-21 09:06:35
我妈逼我去相亲,到了餐厅傻眼了,相亲对象竟是天天骂我的女总裁

我妈逼我去相亲,到了餐厅傻眼了,相亲对象竟是天天骂我的女总裁

匹夫来搞笑
2026-08-21 05:17:49
人到晚年才彻底明白:女婿或者儿媳不来拜访,其实背后是在给你敲响这三个“警钟”

人到晚年才彻底明白:女婿或者儿媳不来拜访,其实背后是在给你敲响这三个“警钟”

枫红染山径
2026-08-22 01:53:54
北京交通治理有成效 为什么早没使出这些招?

北京交通治理有成效 为什么早没使出这些招?

小眼睛小世界
2026-08-22 04:25:12
一脸油腻,表情狰狞,却硬在央视大剧演刑警,网友:真不害臊吗?

一脸油腻,表情狰狞,却硬在央视大剧演刑警,网友:真不害臊吗?

洲洲影视娱评
2026-08-19 13:23:27
瓜帅离队后曼城曝内讧:瓜帅决赛质问哈兰德,怒喷不防守不跑位

瓜帅离队后曼城曝内讧:瓜帅决赛质问哈兰德,怒喷不防守不跑位

小金体坛大视野
2026-08-21 13:15:03
美媒:美国高校对外国学生吸引力持续下降

美媒:美国高校对外国学生吸引力持续下降

参考消息
2026-08-20 18:56:06
6.1 英寸!新机官宣:8月25日,正式发布!

6.1 英寸!新机官宣:8月25日,正式发布!

科技堡垒
2026-08-21 11:44:38
2026-08-22 07:44:49
码农翻身 incentive-icons
码农翻身
有趣且硬核的技术文章
299文章数 668关注度
往期回顾 全部

科技要闻

阿里AI的两面:云赚56亿,千问烧掉138亿

头条要闻

老房因液化气罐爆燃坍塌致3死 次日被加急安装报警器

头条要闻

老房因液化气罐爆燃坍塌致3死 次日被加急安装报警器

体育要闻

续哈登+招沃特森=骑士赌了

娱乐要闻

冯绍峰七夕带儿子游玩!次日聚会

财经要闻

蔡昉解读经济:扩大消费需求的政策思考

汽车要闻

2026成都车展:小鹏全阵容亮相 三款新车套件上新

态度原创

亲子
本地
教育
家居
公开课

亲子要闻

什么是无条件爱孩子?这是我听过最赞的答案!

本地新闻

《牛来》的一声“妈妈”,到底多少人被精神污染了

教育要闻

新生适应期,班主任做好这4件事就够了

家居要闻

2026建博会(广州) 公装联探展交流活动

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版