Find Jobs
Hire Freelancers

Distributed Workers with Akka and Scala

$30-250 USD

En cours
Publié il y a presque 8 ans

$30-250 USD

Payé lors de la livraison
I have a small local network consisting of one personal computer and two Raspberry Pi's. I would like to distribute two types of work across this network at the same time to be worked on in parallel. 1) Calculate the first 1000 numbers of the Fibonacci Sequence 2) Find all Prime numbers between 1 and 1000 The Front-end should be emulated where each type of work is produced via a Work Producer that submits a job to the Master that in turn sends a Worker Request to all Work Provisioners. It is then up to each Work Provisioner to provide a Worker of the requested type IF the resources on the node allow it. If there aren't enough resources to offer a new task of that type, then the Master must wait until a node is ready. In this scheme, work is not pushed to the workers. Instead, the Workers ask for it. When the Worker receives work, it spawns a future to complete the work so that it can remain responsive to the Master. This pattern must be developed with all the proper message passing. For example, between the Master and Worker there should be messages that include "Work Done", "Do This Work", "Work Complete", "Spawn Work", etc. and code for how to handle those messages. I imagine the Work Producer and Master running on my personal computer while the Work Provisioners and actual Workers run on each of my Raspberry Pi's. This solution must be scalable so that I can add more Raspberry Pi's to increase performance. I require the ability to monitor the load of the Master and each of the Worker Nodes. I also require the ability to push updates to the Fibonacci and Prime Finder workers while running. In other words, I do not want to bring down the system each time I have to make a code change. I am new to Akka and Scala and therefore cannot articulate fully what I intend. Please see "Required Reading" below for a better understanding of what I want. It is reasonable to only use one Master for this project, therefore a load balancer for the Masters is not needed, just the Worker Nodes. Required Reading: [login to view URL] [login to view URL] [login to view URL] Please use this as a starting point if it saves you time, and me money. [login to view URL] I am looking for competitively priced bids with proposals that demonstrate mastery of the above concepts, as well as clear communication skills. I will not accept bids without proposals.
N° de projet : 11234133

Concernant le projet

4 propositions
Projet à distance
Actif à il y a 8 ans

Cherchez-vous à gagner de l'argent ?

Avantages de faire une offre sur Freelancer

Fixez votre budget et vos délais
Soyez payé pour votre travail
Surlignez votre proposition
Il est gratuit de s'inscrire et de faire des offres sur des travaux
4 freelances proposent en moyenne $308 USD pour ce travail
Avatar de l'utilisateur
Hi, My name is pallab. I would like to build the application you are asking for. Your requirements are mostly clear except the part where you ask for the ability to make changes to the workers without bringing the system down. Well it is both possible and impossible based on what you are actually asking. If you want to change the internal state of an worker, it's possible to do so live. But say, you want to add a new kind of worker, ex: factorial calculator it is not possible to do so as the Jvm doesn't do hot code reload. Apart from this I have experience of building two large scale production systems on Akka and Scala. One system uses the pull pattern for hight fault tolerance. The other uses the push pattern due to strict performance SLAs. I would like to use my experiences to help you. Let me know what you think
$222 USD en 7 jours
0,0 (0 commentaires)
0,0
0,0

À propos du client

Drapeau de UNITED STATES
Rochester Hills, MI, United States
5,0
2
Méthode de paiement vérifiée
Membre depuis mai 10, 2014

Vérification du client

Merci ! Nous vous avons envoyé un lien par e-mail afin de réclamer votre crédit gratuit.
Une erreur a eu lieu lors de l'envoi de votre e-mail. Veuillez réessayer.
Utilisateurs enregistrés Total des travaux publiés
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Chargement de l'aperçu
Permission donnée pour la géolocalisation.
Votre session de connexion a expiré et vous avez été déconnecté. Veuillez vous connecter à nouveau.