Question: Implementation: A Framework for Distributed Computing of Matrix Multiplication Using One Client and Multiple Servers [10 points] In this bonus task, you will extend your

Implementation: A Framework for Distributed Computing of Matrix Multiplication Using One Client and Multiple Servers [10 points] In this bonus task, you will extend your program into having multiple servers and one client: A client divides a big application into several small problems which are processed by multiple servers.

All servers compute their respective solutions and send the result to the client.

The client assembles the result and outputs the final result to the user.

The client acts as a supervisor. The number of available servers and their fully qualified Internet names can be saved in a file (some server configuration). Client (As a coordinator) It reads the server configuration file to get information about the available servers.

It creates an array of sockets and input/output data streams with all servers.

It passes control to a main function to invoke the work to be done. Server (Worker) It creates a server socket on an unused port number;

It waits for connection on that port. Once it gets a request from a client, it accepts that connection.

It creates an input/output data stream for the socket. This establishes the basis for communication between the server socket and the client.

It then passes control to the server body, which contains the code specific to the application being executed either in parallel or in distributed manner.

The main server can accept the connection from the client, create a socket and invoke the server body to handle that client.

It goes back and waits for another client.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!