Erlang 面试题及详细答案.docxVIP

  • 2
  • 0
  • 约1.12万字
  • 约 11页
  • 2026-05-18 发布于河北
  • 举报

Erlang面试题及详细答案

一、基础必考题(侧重核心特性,避免死记硬背)

1.请说说Erlang的核心特性有哪些?结合你实际使用场景,举例说明其中一个特性的优势

答案:Erlang核心特性主要有5个,贴合实际开发的表述如下(不堆砌概念):

1.函数式编程:变量不可变(一旦赋值不能修改),函数是一等公民,支持高阶函数、模式匹配;

2.并发模型:基于轻量级进程(不是操作系统进程),进程间通过消息传递通信,无共享内存;

3.分布式:天生支持分布式部署,多个节点可无缝通信,进程可跨节点创建和通信;

4.容错机制:通过监督树(Supervisor)实现故障自愈,进程崩溃后可按策略重启,保证系统高可用;

5.热更新:支持代码热加载,无需重启系统即可更新模块,不影响线上服务运行。

实际场景举例(以并发模型为例):我们项目中做消息推送服务,需要同时处理上万个客户端的连接请求。如果用Java的线程,每个连接对应一个线程,线程切换成本高、内存占用大;而Erlang的轻量级进程,每个进程占用内存极小(约2KB),支持几十万甚至上百万个进程并发,进程间通过消息队列通信,无锁竞争,开发时只需关注每个进程的逻辑(接收消息、处理消息),无需关心并发控制,极大降低了开发复杂度,且服务稳定性更高。

2.Erlang中变量和原子的区别是什么?请举例说明,避免只说定义

答案:核心区别有3点,

文档评论(0)

1亿VIP精品文档

相关文档