Top Banner
Copyright © 2014–2015 Russel Winder 1 GPars Remoting Dr Russel Winder [email protected] @russel_winder http://www.russel.org.uk
48
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: GPars Remoting

Copyright © 2014–2015 Russel Winder 1

GPars Remoting

Dr Russel [email protected]

@russel_winderhttp://www.russel.org.uk

Page 2: GPars Remoting

Copyright © 2014–2015 Russel Winder 2

This is a sales pitch…

Page 3: GPars Remoting

Copyright © 2014–2015 Russel Winder 3

This is a sales pitch…✘

Page 4: GPars Remoting

Copyright © 2014–2015 Russel Winder 4

This is breaking news…

Page 5: GPars Remoting

Copyright © 2014–2015 Russel Winder 5

This is breaking news…✘

Page 6: GPars Remoting

Copyright © 2014–2015 Russel Winder 6

It's new…

Page 7: GPars Remoting

Copyright © 2014–2015 Russel Winder 7

It's new…✘

Page 8: GPars Remoting

Copyright © 2014–2015 Russel Winder 8

It's improved…

Page 9: GPars Remoting

Copyright © 2014–2015 Russel Winder 9

It's improved…✔

Page 10: GPars Remoting

Copyright © 2014–2015 Russel Winder 10

It's…

Page 11: GPars Remoting

Copyright © 2014–2015 Russel Winder 11

Page 12: GPars Remoting

Copyright © 2014–2015 Russel Winder 12

Thanks to GSoC 2014,

Rafał Sławik

built on a partial implementation by

Alex Tkachman.

Page 13: GPars Remoting

Copyright © 2014–2015 Russel Winder 13

Remote Objects

Page 14: GPars Remoting

Copyright © 2014–2015 Russel Winder 14

GPars already has single JVM

concurrency and parallelism.

You can use it from Javaas well as Groovy.

Page 15: GPars Remoting

Copyright © 2014–2015 Russel Winder 15

GPars now has remote objects.

Realized by using Netty.

Page 16: GPars Remoting

Copyright © 2014–2015 Russel Winder 16

ActorsIndependent processes communicating via asynchronous exchange of messages.

DataflowOperators connected by channels with activity triggered by arrival of data on the channels.

Data ParallelismTransform a sequence to another sequence where all individual actions happen at the same time.

CSPOperators connected by channels with activity triggered by arrival of data on the channels.

Page 17: GPars Remoting

Copyright © 2014–2015 Russel Winder 17

Active ObjectsAn object that is actually an actor but looks like a full service object.

AgentsA wrapper for some shared mutable state.

Software Transactional MemoryWrappers for mutable values that uses transactions rather than locks.

Fork/JoinAn toolkit for tree structured concurrency and parallelism.

Page 18: GPars Remoting

Copyright © 2014–2015 Russel Winder 18

ActorsIndependent processes communicating via asynchronous exchange of messages.

DataflowOperators connected by channels with activity triggered by arrival of data on the channels.

Data ParallelismTransform a sequence to another sequence where all individual actions happen at the same time.

CSPOperators connected by channels with activity triggered by arrival of data on the channels.

Page 19: GPars Remoting

Copyright © 2014–2015 Russel Winder 19

Data ParallelismTransform a sequence to another sequence where all individual actions happen at the same time.

Page 20: GPars Remoting

Copyright © 2014–2015 Russel Winder 20

DataflowOperators connected by channels with activity triggered by arrival of data on the channels.

Page 21: GPars Remoting

Copyright © 2014–2015 Russel Winder 21

Code

Page 22: GPars Remoting

Copyright © 2014–2015 Russel Winder 22

CSPSequential processes communicating by sending messages on channels.

Page 23: GPars Remoting

Copyright © 2014–2015 Russel Winder 23

ActorsIndependent processes communicating via asynchronous exchange of messages.

Page 24: GPars Remoting

Copyright © 2014–2015 Russel Winder 24

Code

Page 25: GPars Remoting

Copyright © 2014–2015 Russel Winder 25

ActorsIndependent processes communicating via asynchronous exchange of messages.

DataflowOperators connected by channels with activity triggered by arrival of data on the channels.

Data ParallelismTransform a sequence to another sequence where all individual actions happen at the same time.

CSPOperators connected by channels with activity triggered by arrival of data on the channels.

Page 26: GPars Remoting

Copyright © 2014–2015 Russel Winder 26

But isn't this just clustering, and

isn't this standard stuff?

Page 27: GPars Remoting

Copyright © 2014–2015 Russel Winder 27

Elephant in the Room…

Page 28: GPars Remoting

Copyright © 2014–2015 Russel Winder 28

Page 29: GPars Remoting

Copyright © 2014–2015 Russel Winder 29

Page 30: GPars Remoting

Copyright © 2014–2015 Russel Winder 30

Page 31: GPars Remoting

Copyright © 2014–2015 Russel Winder 31

Hadoop

Page 32: GPars Remoting

Copyright © 2014–2015 Russel Winder 32

Page 33: GPars Remoting

Copyright © 2014–2015 Russel Winder 33

Page 34: GPars Remoting

Copyright © 2014–2015 Russel Winder 34

GPars can compete in

“Big Data”, but will it?

Page 35: GPars Remoting

Copyright © 2014–2015 Russel Winder 35

Service Oriented Architecture

Page 36: GPars Remoting

Copyright © 2014–2015 Russel Winder 36

Services

Page 37: GPars Remoting

Copyright © 2014–2015 Russel Winder 37

Micro-Services

Page 38: GPars Remoting

Copyright © 2014–2015 Russel Winder 38

Micro-Services

Passé

Page 39: GPars Remoting

Copyright © 2014–2015 Russel Winder 39

Pico-Services

Page 40: GPars Remoting

Copyright © 2014–2015 Russel Winder 40

No need for HTTP, Web,

port 80, HTML, CSS…

Page 41: GPars Remoting

Copyright © 2014–2015 Russel Winder 41

ActorsActive ObjectsAgentsDataflow Operators

LocalRemote

Page 42: GPars Remoting

Copyright © 2014–2015 Russel Winder 42

NUMA

Page 43: GPars Remoting

Copyright © 2014–2015 Russel Winder 43

Non-Uniform Memory Architecture

Page 44: GPars Remoting

Copyright © 2014–2015 Russel Winder 44

Local concurrency/parallelism

Remote concurrency/parallelism

Page 45: GPars Remoting

Copyright © 2014–2015 Russel Winder 45

Page 46: GPars Remoting

Copyright © 2014–2015 Russel Winder 46

Page 47: GPars Remoting

Copyright © 2014–2015 Russel Winder 47

A fun demo…

Page 48: GPars Remoting

Copyright © 2014–2015 Russel Winder 48

GPars Remoting

Dr Russel [email protected]

@russel_winderhttp://www.russel.org.uk