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 应用设计模式,覆盖从语言到生产部署的完整知识路径。
全部文章 Game Golang SaaS Rust 游戏开发 客户端开发 GameDev Lua 写作 小说
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)。

8 分钟阅读
Erlang OTP 应用设计
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 沙箱与资源限制、安全审计与日志。

7 分钟阅读
Erlang Elixir 安全
erlang

Ecto 高级查询与数据库工程:关联、多态与性能优化

Ecto 高级查询与数据库工程:查询构建器(from/join/where/order/group/having/窗口函数)、关联预加载(preload/join_preload)、多态关联(表继承/单表继承/多态外键)、数据库事务与隔离级别(Repo.transaction/Ecto.Multi)、变更集与数据验证(cast/validate/unique_constraint)、子查询与 CTE、Ecto 适配器与连接池(DBConnection/连接池大小/超时)、与 PostgreSQL 高级特性集成(JSONB/数组/范围/全文搜索)、性能分析与 N+1 治理。

7 分钟阅读
Elixir Ecto 数据库
erlang

Erlang/Elixir 可观测性:日志、Telemetry 指标与分布式追踪

Erlang/Elixir 可观测性:日志系统(Logger 配置/处理器/格式化/结构化日志)、Telemetry 事件与指标(attach/detach/execute/计数器/直方图/最后值)、分布式追踪(OpenTelemetry/Span 上下文传播)、Observer/CLI 诊断工具(observer_cli/recon/vmstats)、监控告警(Prometheus/Grafana 集成)、BEAM VM 内部指标(reductions/内存/进程/ETS)、日志聚合与 ELK/Loki 集成、可观测性最佳实践。

7 分钟阅读
Erlang Elixir Telemetry
erlang

Elixir OTP 监督树与任务并发:Supervisor、GenServer 与 Task

Elixir OTP 监督树与任务并发:Supervisor 策略(one_for_one/one_for_all/rest_for_one/simple_one_for_one)、GenServer 状态机(init/handle_call/handle_cast/handle_info)、Task 异步并发(async/await/yield)、Agent 轻量状态、DynamicSupervisor 动态子进程、Registry 进程发现、OTP 应用结构(Application 回调/规格)、错误隔离与重启强度(MaxR/MaxT)、分布式 Erlang 节点通信、与 Phoenix 的集成模式。

7 分钟阅读
Elixir OTP Supervisor
erlang

Erlang 位语法与二进制处理:高效数据序列化与协议解析

Erlang 位语法与二进制处理:二进制数据类型(bitstring/binary)、位语法表达式(<<Value:Size/TypeSpecifierList>>)、模式匹配二进制(头部/长度/剩余)、二进制推导(binary comprehensions)、高效拼接与拆分(iolist/iodata)、位标志位掩码操作、协议解析实战(TCP/IP 包头/Bitcoin 区块/Protobuf 二进制)、性能优化与内存布局、与 C/NIF 的互操作。

7 分钟阅读
Erlang 位语法 二进制