Your SlideShare is downloading. ×
Treasure Island
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Treasure Island

2,878
views

Published on

Treasure Island - Railsberry 2012 - Krakow. Talk about concurrency in Ruby and JRuby in particular. …

Treasure Island - Railsberry 2012 - Krakow. Talk about concurrency in Ruby and JRuby in particular.

Ruby is pretty unique among scripting languages in having not only one
but six (!) fairly mature runtime environments -- MRI, Rubinius, JRuby,
MacRuby, IronRuby and MagLev -- each of them with specific strengths.

In this talk I will first give a brief overview of planet Ruby and its continents.
Then we will embark together on a journey into the deepest concurrency jungles
on Java island, where strange beasts like Kilim, Jetlang and Akka roam.
With a little luck, we might even encounter the legendary Disruptor!

Using examples taken from actual production JRuby code, I will demonstrate how
the power of the JVM plus the rich ecosystem around it are an ideal complement
to the expressiveness of Ruby -- and how this killer combination can be used to
fully exploit modern multicore hardware.

Speakers: Tim Lossen, Patrick Huesler

Published in: Technology, Sports

0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,878
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
31
Comments
0
Likes
4
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. Treasure Island
  • 2. TourGuides
  • 3. @tlossen
  • 4. @phuesler
  • 5. “The Free Lunch is Over.” — Herb Sutter (2005)
  • 6. Concurrency
  • 7. Fin?
  • 8. Concurrency
  • 9. Multi Core
  • 10. ThreadConcurrency
  • 11. !fork()
  • 12. Rubies!!!
  • 13. GIL
  • 14. http://igvita.com/2008/11/13/concurrency-is-a-myth-in-ruby/
  • 15. Ruby MRI 1.8 X REE 1.8 XRuby MRI 1.9 X IronRuby (✔) Maglev ? Rubinius ✔ JRuby ✔ MacRuby ✔
  • 16. JRuby
  • 17. Java Island
  • 18. Multi-Threading
  • 19. Evil?
  • 20. java.util.concurrent
  • 21. AtomicBoolean
  • 22. CountDown Latch
  • 23. CyclicBarrier
  • 24. Executor
  • 25. Future
  • 26. Actors
  • 27. Bad Actors
  • 28. and thenominees are...
  • 29. MRI
  • 30. Better Actors
  • 31. Erlang
  • 32. Scala
  • 33. Rubinius
  • 34. JRuby
  • 35. Frameworks
  • 36. Akka
  • 37. Scala
  • 38. Heavily Inspired by Erlang
  • 39. SimpleConcurrency
  • 40. Distributed
  • 41. FaultTolerant
  • 42. Supervisors
  • 43. Fast
  • 44. Can it be used with JRuby?
  • 45. Yes*
  • 46. Moarrrrr!!!!
  • 47. STM
  • 48. Evented
  • 49. Disruptor
  • 50. http://martinfowler.com/articles/lmax.html
  • 51. Q&A
  • 52. “There ain’t no suchthing as a free lunch.” — Robert A. Heinlein ❦
  • 53. Links• “The Free Lunch Is Over” (Herb Sutter, 2005)• “Real-World Concurrency” (Bryan Cantrill, Jeff Bonwick, 2008)• “Dont Fear the Threads” (David Copeland, 2012)• “Concurrency is not Parallelism” (Rob Pike, 2012)• “The LMAX Architecture” (Martin Fowler, 2011)
  • 54. CreditsAjith Kumar (Flickr)tontoncopt (Flickr)Hatem Riahi (Flickr)Stefanie (Flickr)
  • 55. CreditsBarry Skeates (Flickr)Hillary White (Flickr)David Thompson (Flickr)“Dope Zebra”, Rhett & Link