OTP

OTP

(Open Telecom Platform) is a collection of framework/lib/tools written in Erlang

Horrible error messaging

Observer

iex(1)> observer.start()

In-memory store key value for elixir and erlang

>10x Faster than redis according toarrow-up-right

  • Created and owned by individual processes(destroyed on exit), so back with GenServer and now any process can access, no bottleneck

  • Only limit is server memory.

  • Because multiple can access at the same time unlike message based agents, operations must be atomic (ft for something like counter updating)

    • Concurrent reads with serial writes is a common ETS pattern

Applications of ETS

  • persisent shared state(tzdata, )

  • ephemeral shared state(cache, rate limiter)

  • IPC

Usage

Advanced

http://erlang.org/doc/man/disk_log.htmlarrow-up-right

APIS are interchangeable except

  • how tables are created with named table default

  • :dets vs :ets and fewer features

  • Slower cuz disk

Usage

Last updated