博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Erlang 之父 Joe Armstrong 去世
阅读量:2157 次
发布时间:2019-05-01

本文共 705 字,大约阅读时间需要 2 分钟。

早上刷推的时候看到有好友在转发一条让人震惊的消息,Erlang 之父 Joe Armstrong 于4月20日去世,卧槽,印象中他和比尔盖茨是同时代的人,查了一下才68岁,多可惜啊。

640?wx_fmt=png

很多人可能对 Joe Armstrong 不了解,但是 Erlang 这门语言你一定听说过,游戏公司用它来写服务端开发。Erlang对标的语言是Go,适用于并发要求很高的业务场景下。不过 Erlang 并没有像Go一样的流行起来。

但是 Joe Armstrong的博士论文《面对软件错误构建可靠的分布式系统》对研究并发却非常有参考价值,论文阐述了 Erlang 的设计思想,提出了 “一切皆进程”等9条 Erlang 世界观。基于此理念设计出了可靠性达到99.9999999%的目前世界上最复杂的 ATM 交换机。

  • 一切皆进程

  • 进程强隔离

  • 进程的生成与销毁都是轻量的操作

  • 消息传递是进程交互的唯一方式

  • 每个进程有唯一的名字

  • 你若知道进程的名字,就可以向他发消息

  • 进程之间不共享资源

  • 错误处理非本地化

  • 进程要么正常跑着,要么马上挂掉

如果你是并发编程语言的爱好者,强烈推荐你阅读这篇论文。像我们这种普通程序员都能看懂,没有复杂的公式推导,以白话的方式解答"如何在存在软件错误的情况下编写出具有合理行为的软件"。

以前看过 Joe Armstrong 用一张5岁小孩都能看懂的图完美解释了并发与并行的区别。这就是所谓的大道至简,当你对一件事物理解透彻之后,总可以用最浅显易懂的方式表达出来。

640?wx_fmt=jpeg

《面对软件错误构建可靠的分布式系统》阅读地址:http://t.cn/EaU2jOP ,也可以在公众号回复「erlang」获取PDF文件

转载地址:http://mpqwb.baihongyu.com/

你可能感兴趣的文章
flask_migrate
查看>>
解决activemq多消费者并发处理
查看>>
UDP连接和TCP连接的异同
查看>>
hibernate 时间段查询
查看>>
java操作cookie 实现两周内自动登录
查看>>
Tomcat 7优化前及优化后的性能对比
查看>>
Java Guava中的函数式编程讲解
查看>>
Eclipse Memory Analyzer 使用技巧
查看>>
tomcat连接超时
查看>>
谈谈编程思想
查看>>
iOS MapKit导航及地理转码辅助类
查看>>
检测iOS的网络可用性并打开网络设置
查看>>
简单封装FMDB操作sqlite的模板
查看>>
iOS开发中Instruments的用法
查看>>
iOS常用宏定义
查看>>
什么是ActiveRecord
查看>>
有道词典for mac在Mac OS X 10.9不能取词
查看>>
关于“团队建设”的反思
查看>>
利用jekyll在github中搭建博客
查看>>
Windows7中IIS简单安装与配置(详细图解)
查看>>