GithubHelp home page GithubHelp logo

Comments (10)

TaeHunKim avatar TaeHunKim commented on August 25, 2024

As a start, I'll implement a simple word counter with one task as mentioned in ISSUE #4 .

After that, I'll try to separate word generator and aggregator as two or three tasks.
(For this, I should study sharing data among tasks.)

from pluto.

DifferentSC avatar DifferentSC commented on August 25, 2024

To separate the word generator and aggregator task, I think we'd better implement word generator and aggregator in different REEF jobs and run those jobs in separate machines.

We can use RemoteManager for the network communication. Because RemoteManager provides low-level socket-based API, we can make a connection easily if we have addresses of word generator and aggregator. It handles data using Wake EventHandler, so we can also easily implement receiving data process inside the EventHandler. The main aggregator task thread will sleep all the time, and EventHandler inside it will wake up and handle the data whenever it comes in. Word generator and aggregator should use same codec to be used for serialization / deserialization of the data.

Below is the overall structure of the model.

image

from pluto.

bgchun avatar bgchun commented on August 25, 2024

@DifferentSC @TaeHunKim How about using NCS instead of RemoteManager?
@dafrista What do you think?

from pluto.

DifferentSC avatar DifferentSC commented on August 25, 2024

I think NCS could be a better option, because each RM in Machine 2 should have different socket numbers and it could be troublesome to send data to all different sockets in Machine 1 manually.

from pluto.

DifferentSC avatar DifferentSC commented on August 25, 2024

I made an example about how to use NCS in REEF Jobs. The code might be somewhat dirty, but I think it can be some help to resolving this issue.

https://github.com/DifferentSC/reef-ncs-example

from pluto.

bgchun avatar bgchun commented on August 25, 2024

@DifferentSC We don't write dirty code. ;-)

from pluto.

TaeHunKim avatar TaeHunKim commented on August 25, 2024

Thanks to @DifferentSC, I success to implement word counter with one generator and one aggregator.
But I still have some questions and discussions about it. We may can talk about them f2f when you have time.
After that, I will refactor this code, make a pull request, and try to improve it with multiple aggregator.

from pluto.

TaeHunKim avatar TaeHunKim commented on August 25, 2024

I finished the basic experiment. I'll extend the experiment in other issued

from pluto.

taegeonum avatar taegeonum commented on August 25, 2024

@TaeHunKim Is it ok to close this issue? If yes, please close it.

from pluto.

TaeHunKim avatar TaeHunKim commented on August 25, 2024

@taegeonum I forgot to close it. Thank you. I'm going to close it.

from pluto.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.