SuperAPI AI 工具集

erlang-elixir-principal-engineer

编程与开发

查看项目

更新于 10-16 01:17

技能介绍

该技能是一份 Erlang/Elixir 资深到首席级别的实战准则,用于构建高可用后端系统。使用前先确认:语言选择(Erlang 或 Elixir)、OTP 版本、集群拓扑、持久化策略、工作负载特征、可用性目标与完成定义;先围绕进程、监督、消息流与故障隔离建模,再谈框架。

默认要求使用 OTP 行为(GenServer、Supervisor、DynamicSupervisor,必要时 GenStage),保持 Phoenix/HTTP 层轻薄,把策略与编排放入可测试模块,显式定义消息契约与状态转换,并把信箱增长、进程基数与背压视为主要生产风险。对外部依赖明确超时、重试与熔断;统一使用 telemetry 与结构化日志。

实现流程:先复现问题或写测试,再确定进程归属、监督策略与消息边界,定义失败语义(重启、重试、丢弃、死信或升级),实现最小端到端切片,最后验证信箱行为、进程数、超时路径与遥测,并审查集群行为、部署安全与回滚准备。验证命令包括 mix format --check-formatted、mix test、mix credo --strict、mix dialyzer、mix test --trace、mix phx.routes,以及 OTP release 冒烟测试。

并发护栏:每个长生命周期进程要有明确归属与监督策略;避免单个 GenServer 成为无关职责的瓶颈;扇出任务要有界并发;关注信箱增长与调度器失衡;慎用 ETS 作为隐藏全局状态。服务与 API 要在边界校验输入,一致映射领域错误,幂等键处理重试命令,设置显式超时与连接池上限,不向客户端泄露堆栈。

安全最低要求:日志、进程状态转储与崩溃报告中不含密钥;校验外部输入大小与形状;最小权限;加固管理端点、LiveDashboard 与远程 shell;启用跨网络集群前审计节点信任边界。限制:资料未提供具体价格、平台与安装命令等信息,暂未提供。