26、构建容错系统:从待办事项系统到“Let it crash”理念

构建容错系统:从待办事项系统到“Let it crash”理念

在软件开发中,构建容错系统是一项至关重要的任务。本文将详细介绍如何将一个待办事项系统转变为一个容错系统,同时深入探讨“Let it crash”这一重要的编程理念。

1. 动态监管器的转换

要将待办事项缓存转换为动态监管器,需要实现 child_spec/1 函数。以下是具体的代码实现:

defmodule Todo.Cache do 
  ... 

  def child_spec(_arg) do 
    %{ 
      id: __MODULE__, 
      start: {__MODULE__, :start_link, []}, 
      type: :supervisor 
    } 
  end 

  ... 
end

通过上述代码,待办事项缓存就成功转换为了动态监管器。

2. 查找待办事项服务器

接下来,需要修改 Todo.Cache.server_process/1 函数。该函数接收一个名称,并返回待办事项服务器的进程 ID(PID),如果服务器未运行,则启动它。以下是具体的实现代码:

defmodule Todo.Cache do 
  ... 

  def server_process(todo_list_name) do 
    case start_child(todo_list_na
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值