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
3k
7
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
BEAM Architecture Handbook
Andrea Leopardi
May 26, 2019
More Decks by Andrea Leopardi
See All by Andrea Leopardi
Agentic Elixir
whatyouhide
0
520
The Umbrella and the Range
whatyouhide
0
71
gen_statem - OTP's Unsung Hero
whatyouhide
2
350
The World is a Network (and We Are Just Nodes)
whatyouhide
1
260
BEAM: The Perfect Fit for Networks
whatyouhide
1
270
Update from the Elixir team - 2022
whatyouhide
0
460
Testing Asynchronous OTP
whatyouhide
1
580
Elixir Sightseeing Tour
whatyouhide
0
500
Mint - Disrupting HTTP clients
whatyouhide
0
310
Other Decks in Programming
See All in Programming
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
560
Cloudflare is Agents
chimame
0
160
Building a Meta Ray-Ban display app
akkeylab
0
110
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
490
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
210
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
18k
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
480
属人化した知識を、 AIが辿れる地図にする
pkshadeck
PRO
1
170
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
590
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.6k
20260722_microCMSで考える、AI時代のコンテンツ運用設計
yosh1
0
390
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
320
Featured
See All Featured
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
160
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
200
Darren the Foodie - Storyboard
khoart
PRO
3
3.6k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
640
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
460
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
200
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
350
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
200
What's in a price? How to price your products and services
michaelherold
247
13k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
660
WENDY [Excerpt]
tessaabrams
11
39k
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