the soul of erlang and elixir - goto conference · %rabbitmq messaging that just works whatsapp ....

23
The Soul of Erlang and Elixir Saša Jurić

Upload: others

Post on 28-Jun-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

The Soul of Erlang and ElixirSaša Jurić

Page 2: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

Erlang Elixir

LFE GleamAlpaca

Page 3: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

BEAM

Erlang Elixir

LFE GleamAlpaca

Page 4: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this
Page 5: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

process

...foo(...)...

Page 6: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

...spawn(fn -> ... end)...

Page 7: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

process A

...foo(...)...

process B

...bar(...)...

Page 8: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

process A process B

send( process_b, some_message)

receive do message -> handle(message)end

Page 9: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

BEAM (Erlang VM)

Page 10: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

BEAM (Erlang VM)

Page 11: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

schedulerscheduler schedulerscheduler schedulerscheduler schedulerscheduler

BEAM (Erlang VM)

CPUCPU CPUCPU CPUCPU CPUCPU

Page 12: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

BEAM (Erlang VM)

CPUCPU CPUCPU CPUCPU CPUCPU

schedulerscheduler schedulerscheduler schedulerscheduler schedulerschedulerp1

p2

p3

p4

Page 13: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this
Page 14: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

client

system

Page 15: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

client

system

sum(1..3)

6

Page 16: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

client

connection

client

connection

client

connection

Page 17: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

connection

calculation

spawn

result

Page 18: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this
Page 19: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

node 1 node 2

node 3

Page 20: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this
Page 21: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

fault tolerancelatency

diagnosticsscalability

Page 22: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this

40% off using codectwgotocph19at manning.com

@sasajuric

Page 23: The Soul of Erlang and Elixir - GOTO Conference · %RabbitMQ Messaging that just works WhatsApp . goto; copenhagen GOTO Copenhagen 2019 Conference Nov. 18 - 20 Remember to rate this