Artwork

A tartalmat a SmartLogic LLC biztosítja. Az összes podcast-tartalmat, beleértve az epizódokat, grafikákat és podcast-leírásokat, közvetlenül a SmartLogic LLC vagy a podcast platform partnere tölti fel és biztosítja. Ha úgy gondolja, hogy valaki az Ön engedélye nélkül használja fel a szerzői joggal védett művét, kövesse az itt leírt folyamatot https://hu.player.fm/legal.
Player FM - Podcast alkalmazás
Lépjen offline állapotba az Player FM alkalmazással!

Garbage Collection in Erlang vs JVM/Akka with Manuel Rubio & Dan Plyukhin

44:08
 
Megosztás
 

Manage episode 386738636 series 2493466
A tartalmat a SmartLogic LLC biztosítja. Az összes podcast-tartalmat, beleértve az epizódokat, grafikákat és podcast-leírásokat, közvetlenül a SmartLogic LLC vagy a podcast platform partnere tölti fel és biztosítja. Ha úgy gondolja, hogy valaki az Ön engedélye nélkül használja fel a szerzői joggal védett művét, kövesse az itt leírt folyamatot https://hu.player.fm/legal.

Today on Elixir Wizards, Manuel Rubio, author of Erlang/OTP: A Concurrent World and Dan Plyukhin, creator of the UIGC Actor Garbage Collector for Akka, join host Dan Ivovich to compare notes on garbage collection in actor models.

The discussion digs into the similarities and differences of actor-based garbage collection in Erlang and Akka and introduces Dan's research on how to perform garbage collection in a distributed actor system.

Topics discussed:

  • Akka is akin to Erlang actors for the JVM using Scala, with similar principles like supervision trees, messages, and clustering
  • Erlang uses generational garbage collection and periodically copies live data to the old heap for long-lived elements
  • Actor GC aims to determine when an actor's memory can be reclaimed automatically rather than manually killing actors
  • Distributed actor GC is more challenging than object GC due to the distributed nature and relationships between actors across nodes
  • Challenges include reasoning about failures like dropped messages and crashed nodes
  • GC balance requires optimization of resource release and CPU load management
  • Immutability helps Erlang GC, but copying data for messages impacts performance
  • Research into distributed actor GC is still ongoing, with opportunities for improvement
  • Fault tolerance in Erlang relies on user implementation rather than low-level guarantees
  • Asynchronous messages in Erlang/Elixir mean references may become invalid which is similar to the distributed GC approaches in Dan's research
  • Idempotent messaging is recommended to handle possible duplicates from failures
  • Help your local researcher! Researchers encourage communication from practitioners on challenges and use cases

Links mentioned:

Erlang/OTP Volume 1: A Concurrent World by Manuel Rubio https://altenwald.com/en/book/en-erlang-i
Scala https://www.scala-lang.org/
Akka Framework https://github.com/akka
JVM (Java Virtual Machine) https://www.java.com/en/download/
The BEAM VM https://www.erlang.org/blog/a-brief-beam-primer/
Hadoop Framework https://hadoop.apache.org/
Pony Programming Language https://www.ponylang.io/
SLSA Programming Language https://wcl.cs.rpi.edu/salsa/#:~:text=SALSA%20
Paxos Algorithm https://en.wikipedia.org/wiki/Paxos_(computer_science)
Raft library for maintaining a replicated state machine https://github.com/etcd-io/raft
Dan's Website https://dplyukhin.github.io/
Dan Plyukhin on Twitter: https://twitter.com/dplyukhin
Dan Plyukhin’s YouTube channel: https://m.youtube.com/@dplyukhin
UIGC on GitHub https://github.com/dplyukhin/UIGC
Manuel's Website https://altenwald.com/
Manuel Rubio on Twitter: https://twitter.com/MRonErlang

Special Guests: Dan Plyukhin and Manuel Rubio.

  continue reading

182 epizódok

Artwork
iconMegosztás
 
Manage episode 386738636 series 2493466
A tartalmat a SmartLogic LLC biztosítja. Az összes podcast-tartalmat, beleértve az epizódokat, grafikákat és podcast-leírásokat, közvetlenül a SmartLogic LLC vagy a podcast platform partnere tölti fel és biztosítja. Ha úgy gondolja, hogy valaki az Ön engedélye nélkül használja fel a szerzői joggal védett művét, kövesse az itt leírt folyamatot https://hu.player.fm/legal.

Today on Elixir Wizards, Manuel Rubio, author of Erlang/OTP: A Concurrent World and Dan Plyukhin, creator of the UIGC Actor Garbage Collector for Akka, join host Dan Ivovich to compare notes on garbage collection in actor models.

The discussion digs into the similarities and differences of actor-based garbage collection in Erlang and Akka and introduces Dan's research on how to perform garbage collection in a distributed actor system.

Topics discussed:

  • Akka is akin to Erlang actors for the JVM using Scala, with similar principles like supervision trees, messages, and clustering
  • Erlang uses generational garbage collection and periodically copies live data to the old heap for long-lived elements
  • Actor GC aims to determine when an actor's memory can be reclaimed automatically rather than manually killing actors
  • Distributed actor GC is more challenging than object GC due to the distributed nature and relationships between actors across nodes
  • Challenges include reasoning about failures like dropped messages and crashed nodes
  • GC balance requires optimization of resource release and CPU load management
  • Immutability helps Erlang GC, but copying data for messages impacts performance
  • Research into distributed actor GC is still ongoing, with opportunities for improvement
  • Fault tolerance in Erlang relies on user implementation rather than low-level guarantees
  • Asynchronous messages in Erlang/Elixir mean references may become invalid which is similar to the distributed GC approaches in Dan's research
  • Idempotent messaging is recommended to handle possible duplicates from failures
  • Help your local researcher! Researchers encourage communication from practitioners on challenges and use cases

Links mentioned:

Erlang/OTP Volume 1: A Concurrent World by Manuel Rubio https://altenwald.com/en/book/en-erlang-i
Scala https://www.scala-lang.org/
Akka Framework https://github.com/akka
JVM (Java Virtual Machine) https://www.java.com/en/download/
The BEAM VM https://www.erlang.org/blog/a-brief-beam-primer/
Hadoop Framework https://hadoop.apache.org/
Pony Programming Language https://www.ponylang.io/
SLSA Programming Language https://wcl.cs.rpi.edu/salsa/#:~:text=SALSA%20
Paxos Algorithm https://en.wikipedia.org/wiki/Paxos_(computer_science)
Raft library for maintaining a replicated state machine https://github.com/etcd-io/raft
Dan's Website https://dplyukhin.github.io/
Dan Plyukhin on Twitter: https://twitter.com/dplyukhin
Dan Plyukhin’s YouTube channel: https://m.youtube.com/@dplyukhin
UIGC on GitHub https://github.com/dplyukhin/UIGC
Manuel's Website https://altenwald.com/
Manuel Rubio on Twitter: https://twitter.com/MRonErlang

Special Guests: Dan Plyukhin and Manuel Rubio.

  continue reading

182 epizódok

Minden epizód

×
 
Loading …

Üdvözlünk a Player FM-nél!

A Player FM lejátszó az internetet böngészi a kiváló minőségű podcastok után, hogy ön élvezhesse azokat. Ez a legjobb podcast-alkalmazás, Androidon, iPhone-on és a weben is működik. Jelentkezzen be az feliratkozások szinkronizálásához az eszközök között.

 

Gyors referencia kézikönyv