QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

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:475144
用户头像

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

关注

评论

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

k8s 探测方法总结

Geek_f24c45

#k8s

开源项目的演进会遇到哪些“坑”?KubeVela 从发起到晋级 CNCF 孵化的全程回顾

阿里巴巴云原生

阿里云 开源 云原生 KubeVela

瓴羊Quick BI与Power BI之争:数据大屏优势明显

对不起该用户已成仙‖

Apache IoTDB v1.0.1 发布|修复分区计算,优化集群启停流程

Apache IoTDB

IoTDB

写入性能:TDengine 最高达到 InfluxDB 的 10.3 倍,TimeScaleDB 的 6.74 倍

TDengine

大数据 tdengine 性能测试 时序数据库 国产数据库

面对“中国式报表”需求, 瓴羊 Quick BI的电子表格优于Tableau?

夏日星河

数据基础设施 NFTScan 新增支持 Gnosis 网络

NFT Research

NFT 区块链、

如何使用 Apache IoTDB 中的 UDF

Apache IoTDB

UDF IoTDB

程序调试利器——GDB使用指南

京东科技开发者

c++ debug gdb 企业号 3 月 PK 榜 程序检测

FL Studio编曲2023最新水果中文版本功能介绍

茶色酒

FL Studio 21

详解基于 Celestia、Eclipse 构建的首个Layer3 链 Nautilus Chain

鳄鱼视界

打造成熟产品矩阵,瓴羊Quick BI数据可视化获认可

小偏执o

类加载机制

Apache IoTDB

IoTDB

Deploy Workshop|DIY部署环境,让OceanBase跑起来

OceanBase 数据库

数据库 oceanbase

敏捷开发工具leangoo时间线视图管理项目

顿顿顿

Scrum 敏捷开发 甘特图 敏捷开发管理 时间线

「资源广场」上线|以开发者为中心,打造开放资源共享平台

Jianmu

jenkins CI/CD 镜像仓库 容器镜像 建木

【云图说】 | 第268期 初识开天企业工作台MSSE

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 3 月 PK 榜

CDR2023下载安装图文教程coreldraw23

茶色酒

CorelDraw2023

A/B实验避坑指南:为什么不建议开AABB实验

字节跳动数据平台

大数据 云服务 数据产品 AB testing实战

OceanBase 第六期技术征文活动|小鱼还能“更快”吗?你来试试

OceanBase 数据库

数据库 oceanbase

更人性化的无阈值监控不再为无效告警烦恼

观测云

运维 可观测性 监控告警 观测云 可观测性用观测云

Apache IoTDB v0.13.4 发布|优化监控功能

Apache IoTDB

IoTDB

初识VUE响应式原理

京东科技开发者

Vue 系统架构 Proxy 企业号 3 月 PK 榜 响应系统

OceanBase 4.0 解读:全链路追踪要解决什么问题?从一条慢SQL说起

OceanBase 数据库

数据库 oceanbase

Apache Flink 1.16 功能解读

Apache Flink

大数据 flink 实时计算

详细剖析|袋鼠云数栈前端框架Antd 3.x 升级 4.x 的踩坑之路

袋鼠云数栈

前端‘’

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