Weighted Round Robin Java programs (3 programs).
- or -
Post a project like this705
£80(approx. $102)
- Posted:
- Proposals: 7
- Remote
- #3536044
- Awarded
✪Software Developer ✪Web Developer (Java,Python, Android, jee, JSP, JSF, Java Fx,Vue, Blue J, Nuxt) ✪ Processing ✪ Elastic Search ✪ Database
Saitama
WEBSITE DEVELOPMENT & DESIGN ! WORDPRESS ! JAVA ! PHP ! JAVASCRIPT ! GRAPHIC DESIGN | VIDEO | EXCEL VBA & MACRO EXPERT
New Delhi
471735124416512878002561066391289369297996967540
Description
Experience Level: Entry
I require 3 java programs based on weighted round robin where it will be running on a load balancing machine (i.e. load balancing program works on single machine in own project but a number of node programs will be running on each node).
The 3 programs I require:
1. Load Balancer System.
2. General Worker Node, ensure that any names or IP Addresses are passed on as parameters and not hard coded as the node program will be run on multiple machines or one machine many times.
3. A program for sending jobs into the program.
I have already devised flowcharts from programs 1 and 2 but if you want to do any amendments on the flowchart design via the program you can. This means program 3 will be made from scratch.
Important things to note is:
- They have to be separate programs.
- Each program must have multiple classes.
- Ensure functionality for the class contained in it is relevant.
-link classes together to form the overall algorithm;
- use multi-threading where necessary;
- send, receive and process messages.
- only use the main method for extracting information from the arguments
passed in from the command line and to start your system to ensure that
you are not hard-coding any system specific information;
- do not provide a monolithic solution (e.g. all code in one class or main
method); and,
- do not introduce any form of OS scheduling techniques. As this is a
coordination system, you will only need to consider how to deal with working out which worker node needs to be sent a job message.
Important functional things to note:
1. Separate standard/weighted round-robin algorithm working on a designated server machine (the load balancer).
2. Each node will register with the load balancer by sending a message.
3. The scheduler will record node details.
4. Jobs require the load-balancer to assign the job to the next free node. The job information will detail the number of seconds that a job will take to run, rather than trying to include some form of code that is required to be executed.
5. The load balancer will need to store an ordered list of nodes. In the weighted round-robin strategy, the list could be ordered based on the node’s workload (i.e. the number of jobs given to it already by the load balancer). The least weighted node (i.e. the one that has the least amount of work) will be the one that the job will be sent to.
6. Weighted information to determine the order of the nodes can be gained by remembering how many jobs are currently running on a node along with what its maximum load is.
7. The load balancer assigns the job to a node by sending it a message to work for X seconds. Nodes will receive job requests and wait for the required time. Once a job has finished on a node, a message will be sent back.
You can provide a client (or a program to initiate and send messages into your system) that can be running on the same machine but as a separate program to the load balancer system. This will allow you to develop and test your distributed system on your home machine, or on multiple machines in the lab if lab access is possible.
I have already created flowcharts for program 1 and 2 and would like you to implement them into code, for the third program it has to be from scratch. If you want my flowcharts let me know.
The 3 programs I require:
1. Load Balancer System.
2. General Worker Node, ensure that any names or IP Addresses are passed on as parameters and not hard coded as the node program will be run on multiple machines or one machine many times.
3. A program for sending jobs into the program.
I have already devised flowcharts from programs 1 and 2 but if you want to do any amendments on the flowchart design via the program you can. This means program 3 will be made from scratch.
Important things to note is:
- They have to be separate programs.
- Each program must have multiple classes.
- Ensure functionality for the class contained in it is relevant.
-link classes together to form the overall algorithm;
- use multi-threading where necessary;
- send, receive and process messages.
- only use the main method for extracting information from the arguments
passed in from the command line and to start your system to ensure that
you are not hard-coding any system specific information;
- do not provide a monolithic solution (e.g. all code in one class or main
method); and,
- do not introduce any form of OS scheduling techniques. As this is a
coordination system, you will only need to consider how to deal with working out which worker node needs to be sent a job message.
Important functional things to note:
1. Separate standard/weighted round-robin algorithm working on a designated server machine (the load balancer).
2. Each node will register with the load balancer by sending a message.
3. The scheduler will record node details.
4. Jobs require the load-balancer to assign the job to the next free node. The job information will detail the number of seconds that a job will take to run, rather than trying to include some form of code that is required to be executed.
5. The load balancer will need to store an ordered list of nodes. In the weighted round-robin strategy, the list could be ordered based on the node’s workload (i.e. the number of jobs given to it already by the load balancer). The least weighted node (i.e. the one that has the least amount of work) will be the one that the job will be sent to.
6. Weighted information to determine the order of the nodes can be gained by remembering how many jobs are currently running on a node along with what its maximum load is.
7. The load balancer assigns the job to a node by sending it a message to work for X seconds. Nodes will receive job requests and wait for the required time. Once a job has finished on a node, a message will be sent back.
You can provide a client (or a program to initiate and send messages into your system) that can be running on the same machine but as a separate program to the load balancer system. This will allow you to develop and test your distributed system on your home machine, or on multiple machines in the lab if lab access is possible.
I have already created flowcharts for program 1 and 2 and would like you to implement them into code, for the third program it has to be from scratch. If you want my flowcharts let me know.
Maya S.
100% (1)Projects Completed
1
Freelancers worked with
1
Projects awarded
50%
Last project
5 Apr 2022
United Kingdom
New Proposal
Login to your account and send a proposal now to get this project.
Log inClarification Board Ask a Question
-
There are no clarification messages.
We collect cookies to enable the proper functioning and security of our website, and to enhance your experience. By clicking on 'Accept All Cookies', you consent to the use of these cookies. You can change your 'Cookies Settings' at any time. For more information, please read ourCookie Policy
Cookie Settings
Accept All Cookies