Your SlideShare is downloading. ×
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza

317

Published on

Norberto Ortigoza es instructor para América Latina por parte de Big Nerd Ranch, la empresa de cursos para iOS más importante del mundo. Es Director de Desarrollo en Diverza y co-fundador del grupo …

Norberto Ortigoza es instructor para América Latina por parte de Big Nerd Ranch, la empresa de cursos para iOS más importante del mundo. Es Director de Desarrollo en Diverza y co-fundador del grupo Cocoaheads en el Distrito Federal dirigido a desarrolladores en OSX y iOS. También es instructor oficial de Rubymotion. Ha sido programador por más de 20 años, donde ha empleado Sistemas operativos y lenguajes como NeXT, OSX, Solaris, Windows, Smalltalk, Objective-C, C, Java, C#, Ruby, PHP, Python, Perl y en los últimos días Elixir y Go. Ha impartido cursos de desarrollo en India, USA, Colombia, Bélgica y México.

Es Ingeniero en Computación por parte de la Facultad de Ingeniería de la UNAM. Tiene estudios de Maestría en Ciencias de la Computación por la UNAM. Diplomado en Procesos y Arquitectura de Software por parte del SEI - Carnegie Mellon University.

Published in: Software
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
317
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
15
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. High Availability with Erlang/Elixir Norberto Ortigoza @hiphoox
  • 2. Availability: state of being possible to get or use
  • 3. Server Server Server Cluster
  • 4. Server App Server App Server App Server
  • 5. Operating System Process A Process B Process C
  • 6. System Micro service Micro Service Micro Service
  • 7. Isolation
  • 8. –Alan Kay on the Meaning of “Object-Oriented Programming” “OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late- binding of all things..”
  • 9. Erlang has lightweight processes
  • 10. Process
  • 11. Erlang has messaging
  • 12. Erlang has live code upgrade
  • 13. An Operating System on its own
  • 14. So, What do we do when we detect an error?
  • 15. Let it crash!
  • 16. How?
  • 17. Detect and know why it crashed
  • 18. Process A Process BMonitor
  • 19. Process A Process BLink
  • 20. Supervision Trees
  • 21. Application App Supervisor Worker Worker Worker
  • 22. Application App Supervisor Worker Worker Worker Application App Supervisor Worker Worker Worker
  • 23. Client App Super visor Worker Worker Worker Server App Super visor Worker Worker Worker Server App Super visor Worker Worker Worker BEAM
  • 24. BEAM Client Client Client Client Client Client Client Client
  • 25. 262,144 process default limite, scales to millions
  • 26. Open Telecom Platform (OTP)
  • 27. GenServer GenEvent Supervisor Application Agent Task Elixir
  • 28. Fault tolerance implies scalability
  • 29. To make things fault-tolerant we have to make sure they are made from isolated components
  • 30. If the components are isolated they can run in parallel
  • 31. Things that are isolated and can run in parallel are scalable!
  • 32. Elixir
  • 33. defmodule Hello do IO.puts "Defining the function world" def world do IO.puts "Hello World" end IO.puts "Function world defined" end Hello.world
  • 34. References • http://www.infoq.com/presentations/Building- Highly-Available-Systems-in-Erlang • http://www.infoq.com/presentations/self-heal- scalable-system • http://www.infoq.com/presentations/fault- tolerance-101-qcon-london
  • 35. 39

×