Upgrade to Pro — share decks privately, control downloads, hide ads and more …

A Gentle Overview To Maglev

A Gentle Overview To Maglev

Jonathan Wallace

August 08, 2012

More Decks by Jonathan Wallace

Other Decks in Technology


  1. Get to know me! - software developer (Ruby, Rails, C,

    etc) - http://highgroove.com - [email protected] - @jonathanwallace - WE’RE HIRING!! 4 Thursday, August 9, 12 background, schooling, etc
  2. What is Maglev? maglev is a ruby implementation running on

    a smalltalk VM 9 Thursday, August 9, 12
  3. What is a Smalltalk VM? “smalltalk” and “VM” 10 Thursday,

    August 9, 12 let’s unpack that question. two terms. “smalltalk” and “VM”
  4. “You are correct, sir!” 16 Thursday, August 9, 12 Correct,

    there are two types of VMs these days “VM” term has been overloaded System Virtual machines
  5. What we’re talking about is Process Virtual Machines. 17 Thursday,

    August 9, 12 “write once, run anywhere”
  6. You may have heard of.. MRI (1.8), YARV (1.9), JRuby,

    Maglev, Rubinius 21 Thursday, August 9, 12
  7. What is Maglev? maglev is a ruby implementation running on

    a smalltalk VM 26 Thursday, August 9, 12 everybody got it? good!
  8. But wait! There’s more.. 27 Thursday, August 9, 12 what

    is the VM? can we get some details? the VM is called Gemstone
  9. 29 Thursday, August 9, 12 distributed shared cache, fully ACID

    transactions, enterprise NoSQL data management capabilities, multiuser, multimachine, garbage collection
  10. How does GemStone work? there are a few pieces to

    the puzzle 30 Thursday, August 9, 12
  11. 31 Thursday, August 9, 12 here we have the running

    ruby process. this would be your irb session what’s up with that arrow? what fills up the object space?
  12. 32 Thursday, August 9, 12 on the right, that’s the

    repository. the default ruby repository is just a large file on disk. it contains all of the (persistent) objects, classes and methods know to the system at VM startup
  13. 33 Thursday, August 9, 12 but something lives in the

    middle. This is the called the Stone process
  14. Is that all there is? PJ harvey photo? 37 Thursday,

    August 9, 12 no, of course not. there’s tons of hidden knobs to twiddle, transaction log files, shared page cache, garbage collection, gem notification and communication
  15. When would I use Maglev? 48 Thursday, August 9, 12

    the question you’ve all been asking yourself
  16. - SSL partially implemented - simple rails apps “run” -

    nokogiri supported? 50 Thursday, August 9, 12