Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

GPars Remoting

827 views

Published on

Slides from my Greach 2015 on the "new" remoting features of the GPars framework,

Published in: Technology
  • Be the first to comment

  • Be the first to like this

GPars Remoting

  1. 1. Copyright © 2014–2015 Russel Winder 1 GPars Remoting Dr Russel Winder russel@winder.org.uk @russel_winder http://www.russel.org.uk
  2. 2. Copyright © 2014–2015 Russel Winder 2 This is a sales pitch…
  3. 3. Copyright © 2014–2015 Russel Winder 3 This is a sales pitch…✘
  4. 4. Copyright © 2014–2015 Russel Winder 4 This is breaking news…
  5. 5. Copyright © 2014–2015 Russel Winder 5 This is breaking news…✘
  6. 6. Copyright © 2014–2015 Russel Winder 6 It's new…
  7. 7. Copyright © 2014–2015 Russel Winder 7 It's new…✘
  8. 8. Copyright © 2014–2015 Russel Winder 8 It's improved…
  9. 9. Copyright © 2014–2015 Russel Winder 9 It's improved…✔
  10. 10. Copyright © 2014–2015 Russel Winder 10 It's…
  11. 11. Copyright © 2014–2015 Russel Winder 11
  12. 12. Copyright © 2014–2015 Russel Winder 12 Thanks to GSoC 2014, Rafał Sławik built on a partial implementation by Alex Tkachman.
  13. 13. Copyright © 2014–2015 Russel Winder 13 Remote Objects
  14. 14. Copyright © 2014–2015 Russel Winder 14 GPars already has single JVM concurrency and parallelism. You can use it from Java as well as Groovy.
  15. 15. Copyright © 2014–2015 Russel Winder 15 GPars now has remote objects. Realized by using Netty.
  16. 16. Copyright © 2014–2015 Russel Winder 16 Actors Independent processes communicating via asynchronous exchange of messages. Dataflow Operators connected by channels with activity triggered by arrival of data on the channels. Data Parallelism Transform a sequence to another sequence where all individual actions happen at the same time. CSP Operators connected by channels with activity triggered by arrival of data on the channels.
  17. 17. Copyright © 2014–2015 Russel Winder 17 Active Objects An object that is actually an actor but looks like a full service object. Agents A wrapper for some shared mutable state. Software Transactional Memory Wrappers for mutable values that uses transactions rather than locks. Fork/Join An toolkit for tree structured concurrency and parallelism.
  18. 18. Copyright © 2014–2015 Russel Winder 18 Actors Independent processes communicating via asynchronous exchange of messages. Dataflow Operators connected by channels with activity triggered by arrival of data on the channels. Data Parallelism Transform a sequence to another sequence where all individual actions happen at the same time. CSP Operators connected by channels with activity triggered by arrival of data on the channels.
  19. 19. Copyright © 2014–2015 Russel Winder 19 Data Parallelism Transform a sequence to another sequence where all individual actions happen at the same time.
  20. 20. Copyright © 2014–2015 Russel Winder 20 Dataflow Operators connected by channels with activity triggered by arrival of data on the channels.
  21. 21. Copyright © 2014–2015 Russel Winder 21 Code
  22. 22. Copyright © 2014–2015 Russel Winder 22 CSP Sequential processes communicating by sending messages on channels.
  23. 23. Copyright © 2014–2015 Russel Winder 23 Actors Independent processes communicating via asynchronous exchange of messages.
  24. 24. Copyright © 2014–2015 Russel Winder 24 Code
  25. 25. Copyright © 2014–2015 Russel Winder 25 Actors Independent processes communicating via asynchronous exchange of messages. Dataflow Operators connected by channels with activity triggered by arrival of data on the channels. Data Parallelism Transform a sequence to another sequence where all individual actions happen at the same time. CSP Operators connected by channels with activity triggered by arrival of data on the channels.
  26. 26. Copyright © 2014–2015 Russel Winder 26 But isn't this just clustering, and isn't this standard stuff?
  27. 27. Copyright © 2014–2015 Russel Winder 27 Elephant in the Room…
  28. 28. Copyright © 2014–2015 Russel Winder 28
  29. 29. Copyright © 2014–2015 Russel Winder 29
  30. 30. Copyright © 2014–2015 Russel Winder 30
  31. 31. Copyright © 2014–2015 Russel Winder 31 Hadoop
  32. 32. Copyright © 2014–2015 Russel Winder 32
  33. 33. Copyright © 2014–2015 Russel Winder 33
  34. 34. Copyright © 2014–2015 Russel Winder 34 GPars can compete in “Big Data”, but will it?
  35. 35. Copyright © 2014–2015 Russel Winder 35 Service Oriented Architecture
  36. 36. Copyright © 2014–2015 Russel Winder 36 Services
  37. 37. Copyright © 2014–2015 Russel Winder 37 Micro-Services
  38. 38. Copyright © 2014–2015 Russel Winder 38 Micro-Services Passé ✘
  39. 39. Copyright © 2014–2015 Russel Winder 39 Pico-Services
  40. 40. Copyright © 2014–2015 Russel Winder 40 No need for HTTP, Web, port 80, HTML, CSS…
  41. 41. Copyright © 2014–2015 Russel Winder 41 Actors Active Objects Agents Dataflow Operators Local Remote
  42. 42. Copyright © 2014–2015 Russel Winder 42 NUMA
  43. 43. Copyright © 2014–2015 Russel Winder 43 Non-Uniform Memory Architecture
  44. 44. Copyright © 2014–2015 Russel Winder 44 Local concurrency/parallelism Remote concurrency/parallelism
  45. 45. Copyright © 2014–2015 Russel Winder 45
  46. 46. Copyright © 2014–2015 Russel Winder 46
  47. 47. Copyright © 2014–2015 Russel Winder 47 A fun demo…
  48. 48. Copyright © 2014–2015 Russel Winder 48 GPars Remoting Dr Russel Winder russel@winder.org.uk @russel_winder http://www.russel.org.uk

×