Skip to main content

Erlang

Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance.

OTP

OTP is set of Erlang libraries and design principles providing middle-ware to develop these systems. It includes its own distributed database, applications to interface towards other languages, debugging and release handling tools.

Sequential Programming

Concurrent Programming

ETS (Erlang Term Storage)

Erlang Term Storage, commonly referred to as ETS, is a powerful storage engine built into OTP and available to use in Elixir.

ETS is a robust in-memory store for Elixir and Erlang objects that comes included. ETS is capable of storing large amounts of data and offers constant time data access.

Tables in ETS are created and owned by individual processes. When an owner process terminates, its tables are destroyed. By default ETS is limited to 1400 tables per node.

Tables are divided into four different types, set, ordered_set, bag, andduplicate_bag. Asetorordered_settable can only have one object associated with each key. Abagorduplicate_bagtable can have many objects associated with each key.

https://elixirschool.com/en/lessons/specifics/ets

http://erlang.org/doc/man/ets.html

References

https://www.erlang.org

https://www.erlang.org/course