AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

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

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

关注

评论

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

To B的网易

海比研究院

第一周学习总结

lxz

Android面试心得必备技能储备详解,原理+实战+视频+源码

android 程序员 移动开发

Android面试题整理,动脑学院视频百度云

android 程序员 移动开发

Android高级:动脑学院android全套

android 程序员 移动开发

2021年最新基于Spring Cloud的微服务架构分析

程序员 架构 SpringCloud

自定义View:触摸反馈

Changing Lin

10月月更

分布式常见协议和算法要点摘录-Paxos&Raft

追风少年

分布式 raft PAXOS

漫游图书馆广发招募令,让你的闲置书“游”起来!

墨天轮

MySQL 数据库 oracle 技术书籍 书籍

Android面试题整理,享学课堂Android架构师vip

android 程序员 移动开发

Android高级工程师必备知识!享学课堂vip怎么样

android 程序员 移动开发

《我想进大厂》之kafka夺命连环11问

艾小仙

kafka 面试 后端

用新视角理解新消费里的人货场

石云升

学习笔记 10月月更

Android进程保活黑科技实现原理解密及方法,赶紧学起来

android 程序员 移动开发

Android面试基础技能罗列,自学编程找工作

android 程序员 移动开发

Android面试题2020中高级,享学课堂vip怎么样

android 程序员 移动开发

云原生网关开源、自研、商业化三位一体战略背后的思考

阿里巴巴云原生

阿里云 开源 云原生

android音视频开发面试!享学课堂课程怎么样

android 程序员 移动开发

apk瘦身,动脑学院vip课程分享

android 程序员 移动开发

模块一

🌾🌾🌾小麦🌾🌾🌾

架构实战营

Android进阶之光,享学课堂Android架构师第一期

android 程序员 移动开发

2021云栖大会开源引力峰会重磅发布的战略合作,Grafana服务到底是什么?

阿里巴巴中间件

阿里云 开源 云原生 Grafana 云栖大会

什么是挖矿木马?我猜你还不知道

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

海量数据分析更快、更稳、更准!GaussDB(for MySQL) HTAP只读分析特性详解

华为云数据库小助手

GaussDB 华为云数据库 GaussDB(for MySQL)

apm应用性能管理,享学课堂架构师vip

android 程序员 移动开发

模块一作业

lxz

架构实战营 模块二作业

felix

架构实战营

架构训练营-模块一作业

21°Char

Android高级工程师必看系列,Android基础入门教程

android 程序员 移动开发

Tapdata Cloud 版本上新 | 支持通知自配置,支持GP、MQ数据源,界面更友好!

tapdata

数据库 mongodb

kubernetes设置共享内存

ilinux

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