Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
BEAM Architecture Handbook
Search
Andrea Leopardi
May 26, 2019
Programming
7
2.9k
BEAM Architecture Handbook
Andrea Leopardi
May 26, 2019
Tweet
Share
More Decks by Andrea Leopardi
See All by Andrea Leopardi
The Umbrella and the Range
whatyouhide
0
38
gen_statem - OTP's Unsung Hero
whatyouhide
2
310
The World is a Network (and We Are Just Nodes)
whatyouhide
1
240
BEAM: The Perfect Fit for Networks
whatyouhide
1
240
Update from the Elixir team - 2022
whatyouhide
0
450
Testing Asynchronous OTP
whatyouhide
1
560
Elixir Sightseeing Tour
whatyouhide
0
460
Mint - Disrupting HTTP clients
whatyouhide
0
290
The Evolution of a Language
whatyouhide
0
190
Other Decks in Programming
See All in Programming
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
1k
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
130
DSPy入門 Pythonで実現する自動プロンプト最適化 〜人手によるプロンプト調整からの卒業〜
seaturt1e
1
680
ふつうの Rubyist、ちいさなデバイス、大きな一年
bash0c7
0
840
AIに任せる範囲を安全に広げるためにやっていること
fukucheee
0
130
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
160
AI Assistants for Your Angular Solutions
manfredsteyer
PRO
0
130
エンジニアの「手元の自動化」を加速するn8n 2026.02.27
symy2co
0
140
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
180
Docコメントで始める簡単ガードレール
keisukeikeda
1
110
nuget-server - あなたが必要だったNuGetサーバー
kekyo
PRO
0
230
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
400
Featured
See All Featured
Design in an AI World
tapps
0
170
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
61
52k
Visualization
eitanlees
150
17k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Darren the Foodie - Storyboard
khoart
PRO
3
2.8k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
KATA
mclloyd
PRO
35
15k
Everyday Curiosity
cassininazir
0
160
The Cost Of JavaScript in 2023
addyosmani
55
9.8k
Six Lessons from altMBA
skipperchong
29
4.2k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
69
Transcript
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
receive do :some_message -> # ... :other_message -> # ...
end
def handle_info(:some_message, state) do # ... end def handle_info(:other_message, state)
do # ... end def handle_info(unknown, state) do Logger.warn("Unknown message") {:noreply, state} end
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
defmodule MyAppWeb.Controller do use MyAppWeb, :controller def show(conn, %{"id" =>
id}) do id = String.to_integer(id) end end
defmodule MyAppWeb.Controller do use MyAppWeb, :controller def show(conn, %{"id" =>
id}) do case Integer.parse(id) do {id, ""} -> # ... _other -> send_resp(conn, 400, "bad id") end end end
None
None
None
None
None
None
None
None
None
Node.monitor(consumer_node, true) monitor_ref = Process.monitor(consumer_pid) send(consumer_pid, {monitor_ref, message}) receive do
{:ack, ^monitor_ref} -> Process.demonitor(monitor_ref, [:flush]) {:DOWN, ^monitor_ref, _, _, _} -> give_to_another_consumer(message) {:nodedown, ^consumer_node} -> give_to_another_consumer(message) end
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None