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

Like this? Share it with your network

Share

Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza

on

  • 352 views

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.

Statistics

Views

Total Views
352
Views on SlideShare
346
Embed Views
6

Actions

Likes
2
Downloads
13
Comments
0

2 Embeds 6

https://twitter.com 3
http://www.slideee.com 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial-NoDerivs LicenseCC Attribution-NonCommercial-NoDerivs LicenseCC Attribution-NonCommercial-NoDerivs License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Alta disponibilidad con Erlang/Elixir - Norberto Ortigoza Presentation 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