SlideShare a Scribd company logo
What's special about Elixir?
@sasajuric
aircloak.com
What's Special About Elixir
LFEErlang
OTP
BEAM Elixir
Phoenix
GenStage
EctoPlug
magic source magic beneficiaries
Cowboy Poolboy
long-running system
many tasks
soft real-time
finite time program
all-or-nothing
hard real-time
scheduler scheduler scheduler scheduler
BEAM
CPU CPU CPU CPU
demo
scheduler
p1 p2 p3
scheduler
p10 p11 p12
scheduler
p4 p5 p6
scheduler
p7 p8 p9
p1
p2
p3
p1
p2
1 ms
1 ms
1 ms
1 ms
1 ms
p3 1 ms
demo
shared-nothing concurrency
What's Special About Elixir
exit notification
demo
process
heap
resources
process-owned “stuff” is released
activity
runtime entity
with identity
demo
cancellation
run the job in a separate process
kill the process to cancel it
# run in a separate process
task = Task.async(fn -> ... end)
# wait for the result
case Task.yield(task, :timer.seconds(5)) do
{:ok, result} ->
# the result arrived on time
do_something(result)
nil ->
# timeout -> kill the process
Task.shutdown(task, :brutal_kill)
end
higher-level abstractions
backend frontend
chat history
repo
cache
endpoint
system
backend frontend
chat historyrepo cache endpoint
system
backend
chat historyrepo
supervisor foundations
lightweight concurrency
shared-nothing concurrency
frequent context switching
activities as runtime citizens
syntax
ecosystem
approachability
runtime
syntax
ecosystem
approachability
Scales of Justice image taken from clipartfox.com
https://bit.ly/beam-resources

More Related Content

TXT
Concepts unix process
PDF
aiohttp intro
PDF
asyncio community, one year later
PDF
What Is Async, How Does It Work, And When Should I Use It?
PDF
Aio...whatever
PDF
Go Profiling - John Graham-Cumming
PDF
Ansible, Simplicity, and the Zen of Python
PDF
Go memory
Concepts unix process
aiohttp intro
asyncio community, one year later
What Is Async, How Does It Work, And When Should I Use It?
Aio...whatever
Go Profiling - John Graham-Cumming
Ansible, Simplicity, and the Zen of Python
Go memory

What's hot (20)

PPTX
Debugging & profiling node.js
PDF
Go debugging and troubleshooting tips - from real life lessons at SignalFx
PDF
Puppet Camp Düsseldorf 2014: Continuously Deliver Your Puppet Code with Jenki...
PDF
Ansible
PDF
IaC를 어쭙잖게 맛본 썰?! Ctrl + c/v vs Ansible
PDF
Go Memory
PPTX
Implement server push in flask framework
PDF
Flask With Server-Sent Event
PDF
How to ride a whale
PPTX
Geekcamp ID 2015: Programmable Music
PPTX
All you need to know about the JavaScript event loop
PDF
PuppetConf 2016: Multi-Tenant Puppet at Scale – John Jawed, eBay, Inc.
PDF
DevOps in PHP environment
PDF
Gitosis on Mac OS X Server
PDF
Puppet User Group Presentation - 15 March 2012
ODP
Event Loop in Javascript
KEY
fog or: How I Learned to Stop Worrying and Love the Cloud
PPTX
Zeromq - Pycon India 2013
PDF
Cloud meets Fog & Puppet A Story of Version Controlled Infrastructure
PDF
Event loop
Debugging & profiling node.js
Go debugging and troubleshooting tips - from real life lessons at SignalFx
Puppet Camp Düsseldorf 2014: Continuously Deliver Your Puppet Code with Jenki...
Ansible
IaC를 어쭙잖게 맛본 썰?! Ctrl + c/v vs Ansible
Go Memory
Implement server push in flask framework
Flask With Server-Sent Event
How to ride a whale
Geekcamp ID 2015: Programmable Music
All you need to know about the JavaScript event loop
PuppetConf 2016: Multi-Tenant Puppet at Scale – John Jawed, eBay, Inc.
DevOps in PHP environment
Gitosis on Mac OS X Server
Puppet User Group Presentation - 15 March 2012
Event Loop in Javascript
fog or: How I Learned to Stop Worrying and Love the Cloud
Zeromq - Pycon India 2013
Cloud meets Fog & Puppet A Story of Version Controlled Infrastructure
Event loop
Ad

Similar to What's Special About Elixir (20)

PDF
Intro to elixir and phoenix
PDF
Concurrency, Robustness & Elixir SoCraTes 2015
PDF
Intro to Elixir talk
PDF
ElixirConf 2017 - Writing an Editor in Elixir - Ian Duggan
PDF
A sip of Elixir
PDF
20240412 QFM010 Elixir Reading List March 2024
PDF
Online Talk - Elixir and Phoenix UNIZA OCT 2020
PDF
Functional Programming With Elixir
PDF
Yurii Bodarev - OTP, Phoenix & Ecto: Three Pillars of Elixir
PPTX
Elixir Phoenix
PPTX
Repeating History...On Purpose...with Elixir
PDF
Awesome Concurrency with Elixir Tasks
PDF
Elixir Into Production
PDF
Elixir – Peeking into Elixir's Processes, OTP and Supervisors
PPTX
From Ruby to Elixir
PDF
Introducing Elixir and OTP at the Erlang BASH
PPTX
Elixir - After 2 years in action + code WebUp
ODP
Basics Of Elixir and Phoenix
PPTX
Introduction to Elixir
PDF
Introdução à Elixir
Intro to elixir and phoenix
Concurrency, Robustness & Elixir SoCraTes 2015
Intro to Elixir talk
ElixirConf 2017 - Writing an Editor in Elixir - Ian Duggan
A sip of Elixir
20240412 QFM010 Elixir Reading List March 2024
Online Talk - Elixir and Phoenix UNIZA OCT 2020
Functional Programming With Elixir
Yurii Bodarev - OTP, Phoenix & Ecto: Three Pillars of Elixir
Elixir Phoenix
Repeating History...On Purpose...with Elixir
Awesome Concurrency with Elixir Tasks
Elixir Into Production
Elixir – Peeking into Elixir's Processes, OTP and Supervisors
From Ruby to Elixir
Introducing Elixir and OTP at the Erlang BASH
Elixir - After 2 years in action + code WebUp
Basics Of Elixir and Phoenix
Introduction to Elixir
Introdução à Elixir
Ad

More from Neven Rakonić (6)

PDF
Introduction to Elixir And Phoenix
PDF
Amazon Rekognition
PDF
Json api dos and dont's
PDF
PDF
Hiding secrets in Vault
PDF
Advanced SQL functions explained
Introduction to Elixir And Phoenix
Amazon Rekognition
Json api dos and dont's
Hiding secrets in Vault
Advanced SQL functions explained

Recently uploaded (20)

PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
history of c programming in notes for students .pptx
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
Introduction to Artificial Intelligence
PPTX
Transform Your Business with a Software ERP System
PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Nekopoi APK 2025 free lastest update
PDF
System and Network Administraation Chapter 3
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Computer Software and OS of computer science of grade 11.pptx
PPTX
assetexplorer- product-overview - presentation
PPTX
CHAPTER 2 - PM Management and IT Context
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
history of c programming in notes for students .pptx
Upgrade and Innovation Strategies for SAP ERP Customers
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
Design an Analysis of Algorithms I-SECS-1021-03
Understanding Forklifts - TECH EHS Solution
Introduction to Artificial Intelligence
Transform Your Business with a Software ERP System
Reimagine Home Health with the Power of Agentic AI​
How to Choose the Right IT Partner for Your Business in Malaysia
Which alternative to Crystal Reports is best for small or large businesses.pdf
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Nekopoi APK 2025 free lastest update
System and Network Administraation Chapter 3
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Computer Software and OS of computer science of grade 11.pptx
assetexplorer- product-overview - presentation
CHAPTER 2 - PM Management and IT Context

What's Special About Elixir