cachex 是一个强大的elixir cache 库,提供了事务,fallback,以及过期等基本能力
包含的特性
- TTL
 - 最大大小限制
 - pre、post 执行hooks
 - 事务以及row 锁
 - 异步写操作
 - 分布式
 - 同步本地文件系统
 - streaming cache
 - 批量写
 - 用户命令调用
 - 统计信息
 
参考使用
- 分布式模式 
对于测试需要配置sname 比如iex --sname a@localhost -S mix 
defmodule CacheApp do
  def init do
    Cachex.start_link(:my_cache, [nodes: [:a@localhost,:b@localhost]])
  end
 
  def set(key, value) do
    Cachex.put(:my_cache, key, value)
  end
 
  def get(key) do
    Cachex.get(:my_cache, key)
  end
enddef init do注意: 每个节点需要先进行init 操作,每个节点的cache 进程都需要启动
说明
elixir 周边的一些框架以及工具因为利用了erlang 天然的分布式特性,使用起来比较方便
参考资料
https://github.com/whitfin/cachex 
https://hexdocs.pm/cachex/getting-started.html










