posts

Erlang/Elixir 专题

Erlang 由爱立信于 1986 年开发,是电信级高可用系统的代名词;Elixir 由 José Valim 于 2012 年创造,在保留 BEAM 虚拟机全部能力的同时引入了现代语法和宏系统。本专题系统覆盖 Erlang/Elixir 语言基础与函数式编程范式、轻量级进程(Actor 模型)与消息传递并发、OTP 框架(GenServer/Supervisor/Application/状态机/事件管理)设计与容错策略、自定义 OTP Behaviour 回调契约、BEAM 运行时与进程调度、Ports 与 NIF 的 C 互操作、ETS 内存缓存与 Mnesia 分布式数据库、分布式 Erlang 节点集群与网络分区处理、Elixir Phoenix Web 框架与 Ecto 数据访问、Phoenix Channels 实时通信与 PubSub、LiveView 状态管理进阶、Mix 工具链与工程化、属性测试与 Mock 策略、热代码升级与 Release 滚动发布、以及生产环境调优与经典系统案例(WhatsApp、RabbitMQ),为构建容错的分布式系统提供完整知识路径。进一步追加 OTP 监督树与任务并发、位语法与二进制协议解析、可观测性三支柱、Ecto 高级查询、安全加固与 OTP 应用设计模式,覆盖从语言到生产部署的完整知识路径。并补齐 Nx 数值计算与 Axon、Absinthe GraphQL、宏与元编程、缓存限流熔断、分布式一致性与脑裂治理、BEAM 内存剖析等进阶议题。

探索 BEAM 虚拟机生态的完整技术图谱,从 Erlang 函数式并发到 Elixir 现代 Web 开发,掌握构建高可用分布式系统的核心能力。

专题文章

语言基础

并发与 OTP

BEAM 运行时与互操作

分布式系统

Elixir 与 Web 开发

生产实践

工程工具链与集成

阅读路线

阶段难度建议阅读顺序
入门初级基础语法 → 语言基础 → 模式匹配 → 迭代器
进阶高级并发编程 → OTP 框架 → 自定义 Behaviour → 分布式编程
运行时高级BEAM 调度 → Ports/NIF 互操作 → ETS 缓存
全栈中级Elixir 入门 → Phoenix 实战 → Channels 实时 → LiveView 进阶 → Mix 工程化
生产高级生产案例与性能调优 → BEAM 性能调优 → 数据库集成
工程中级 → 高级rebar3 构建发布 → Dialyzer 类型规范 → Cowboy HTTP API → RabbitMQ 集成

相关专题

Erlang/Elixir 的函数式编程与并发模型与多种技术领域紧密关联:

Erlang/Elixir 的适用场景

场景Erlang/Elixir 优势示例系统
即时通讯百万级长连接、消息可靠投递WhatsApp
消息队列高吞吐、持久化、路由灵活RabbitMQ
实时游戏服务器低延迟状态同步、容错League of Legends 后端
IoT 设备管理海量设备接入、固件热更新HiveMQ
金融服务交易一致性、零停机升级Klarna

Erlang 的「let it crash」哲学不是放任错误,而是将故障隔离到最小单元(进程),通过监督树自动恢复。这与 Kubernetes 的 Pod 重启策略异曲同工。

专题统计

全部文章 Books game Java Indie golang 客户端开发 Minigame Saas rust Python
erlang

OTP 应用设计模式:监督树结构、release 打包与热升级

OTP 应用设计模式:Application 规格与回调(mod/start/stop)、监督树分层架构(Supervisor/Worker/Pool)、行为模式选择(GenServer/GenStatem/GenEvent)、Release 打包( distillery/mix release/relx)、热代码升级(code_change/upgrade/downgrade)、配置管理(Mix.Config/Config.Provider/runtime.exs)、环境分离(dev/test/prod)、远程 Shell 与调试(remsh/observer)、分布式部署策略、性能剖析与优化(fprof/eprof/cprof)。

7 分钟阅读
erlang 部署
erlang

Erlang/Elixir 安全加固:加密、认证与分布式信任

Erlang/Elixir 安全加固:密码哈希(bcrypt/Argon2/PBKDF2)、对称与非对称加密(AES/RSA/ECIES)、数字签名与证书(x509/TLS/SSL)、安全随机数生成(crypto:strong_rand_bytes)、分布式节点安全(cookie/TLS/防火墙)、常见注入攻击防御(SQL 注入/XSS/代码注入)、Secrets 管理(runtime.exs/环境变量/HashiCorp Vault)、BEAM 沙箱与资源限制、安全审计与日志。

6 分钟阅读
erlang elixir 安全