最新发布《数智时代的AI人才粮仓模型解读白皮书(2024版)》,立即领取! 了解详情
写点什么

Erlang 是未来用于并发性的 Java?

  • 2007-08-15
  • 本文字数:869 字

    阅读完需:约 3 分钟

未来的计算是并发计算。现今甚至桌面 CPU 也是多核的,当客户给他们的服务器购买了越来越多的 CPU 时,他们期望其应用伸缩自如以利用他们的新投资。但是今天的许多软件系统并不能做到这一点。

处理并发计算是件困难的事情。但是在普遍使用的编程语言中,并发机制与同一语言的许多其他抽象相比是低层机制,对解决这一问题没有帮助。处理并发性需要做许多工作,但是有使其更简单的方法。

Ralph Johnson 撰写了一篇关于 Erlang 将成为 下一个 Java 的博文。Erlang 进程间通讯的视角完全不同,而且 Ralph 说:即便并发性的 Erlan 风格可以很容易的增加到其他语言中,这些语言还是很难竞争。

我不相信其它语言能迅速赶上 Erlang。对它们来说,加入像 Erlang 这样的语言特征是很容易的。但这将花费他们大量的时间来构建这样一个高质量的 VM 和成熟的并发性与可靠性类库。因此 Erlang 很自然会成功。如果你想在未来几年构建一个多核应用,你应该看看 Erlang。

而且可能还能得到更多的额外好处。Erlang 的创造者——Joe Armstrong,写过面对可伸缩性、容错性以及运行时可更新系统所带来挑战的一石三鸟的解决方案。他说即使这些是不同类型的问题,

一个容错的系统可以很容易成为可伸缩的系统,也很容易成为能够进行热升级(in-service upgrade)的系统.

Armstrong 把这一切都归功于 Erlang 有一套恰当的故障探测和稳定存储的原语(primitive)。因为 Erlang 是专为电信系统而构建的,所有这些方面都重要,并且爱立信已经构建了一个 Erlang 系统,拥有 99.9999999% 的正常运转时间。即每年 31 毫秒的停机时间。

Erlang 不具有任何共享状态,因而呈现出与主流语言不同的并发性。其进程是非常轻量级的,一个进程与另一个进程通过发送消息进行通讯。与那些使用共享内存来完成进程或线程之间通讯的系统不同,这一架构使伸缩性和分布式系统成为可能。为深入研究这种并发方式,Slava Akhmechet 撰写了对这一概念很好的介绍(不需要有Erlang 知识)。

或许是用不同的方式来解决并行问题的时候了?或许是学习一门新语言的时候了?

查看英文原文: Is Erlang the Java for the concurrent future?

2007-08-15 20:474915
用户头像

发布了 150 篇内容, 共 43.4 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

股市老人

AI大模型微调训练营-毕业总结

简单

linux IP地址原理,分类,子网划分,VLAN,TRUNK详解

百度搜索:蓝易云

云计算 Linux 运维 IP 云服务器

AI数字人直播系统源码交付,数字人产业迎来普及化!

青否数字人

数字人

解密数仓的SQL ON ANYWHERE技术

华为云开发者联盟

大数据 华为云 SQL语句 华为云开发者联盟 企业号2024年4月PK榜

C++ 条件与 If 语句:掌握逻辑判断与流程控制精髓

小万哥

程序人生 编程语言 软件工程 C/C++ 后端开发

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

加密眼界

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

鳄鱼视界

解析基础设施即代码:重新定义云管理

SEAL安全

DevOps 云原生 IaC

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

大瞿科技

2024上海国际生物识别技术展览会

吹吹晚风

2024青岛国际太阳能光热发电技术装备展览会

吹吹晚风

Dumping grounds

EchoZhou

Expression English

听说测试“有手就行 ”?华为20年测试老兵干货分享!

华为云开发者联盟

物联网 华为云 华为云开发者联盟 DTSE Tech Talk 企业号2024年4月PK榜

对 NGINX、Kong 和 Amazon 的 API 管理解决方案进行基准测试:它们能否交付实时 API?

NGINX开源社区

nginx SaaS API GigaOm Kong Cloud

MySQL的多层SP中Cursor的m_max_cursor_index相关BUG分析

GreatSQL

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

BlockChain先知

一张二维码VS一个行李箱?!看华为云时习知如何助力防城港核电基本安全考试

平平无奇爱好科技

为什么研发规范,代码评审,单元测试推不动

赫杰辉

万字长文,聊聊我在京东锦礼成长的这一年

京东零售技术

后端 技术人生 企业号 4 月 PK 榜

ShowMeBug李亚飞:IDE与AI自动编程技术将增强超级程序员

B Impact

Penpad Season 2 质押突破350ETH,参与可获Scroll生态空投

石头财经

AI数字人克隆系统源码部署--赋能直播带货!

青否数字人

数字人

MySql中BufferPool的基本概念介绍

百度搜索:蓝易云

MySQL Linux 运维 innodb 云服务器

青否数字人系统源码部署+一次买断终身使用!

青否数字人

数字人

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

股市老人

Java垃圾回收全过程

百度搜索:蓝易云

Java 云计算 Linux 运维 云服务器

k8s说一下deployment,statefulset,daemonset的区别

百度搜索:蓝易云

Linux Kubernetes 运维 Deployment statefulset

什么是单元测试,和集成测试有什么区别?

派大星

单元测试 Java 面试题 互联网大厂面试

深入探索Linux的lsof命令

GousterCloud

Linux

Linux学习之Ubuntu 20使用systemd管理OpenResty服务

百度搜索:蓝易云

Linux ubuntu 运维 openresty systemd

Erlang是未来用于并发性的Java?_Java_Niclas Nilsson_InfoQ精选文章