Ask Question, Ask an Expert

+1-415-315-9853

info@mywordsolution.com

Ask Programming Language Expert

TCP-based Distributed Applications

1. Change this program so that each client will now send ten integers and receives their sum from the server. In Java, for loops can be easily implemented as follows: for (int i = 0 ; i < 10; i++).

2. Change your program now as follows: the client sends a request containing the message "add 10 20" to the server. This server runs the method specified by the client, i.e., "add" using the given parameters, and sends back the result to the client. In addition, the server sends the client's request along with the client's IP address and port number to a backup server. The methods that the user can specify are: add (+), sub (-), mul (*), and div (/). The backup server stores all the received operations in a backup database (in our case it will be a simple array). Note that your program must allow many clients at the same time.

import java.net.*; import java.io.*;
public class TCPClient {
public static void main (String args[]) { // arguments supply message and hostname
     Socket s = null;
     try{
           int serverPort = 7896;
           s = new Socket(args[1], serverPort);   
           DataInputStream in = new DataInputStream( s.getInputStream());
           DataOutputStream out =new DataOutputStream( s.getOutputStream());
           out.prepareUTF(args[0]);          // UTF is a string encoding see Sn. 4.4
           String data = in.readUTF();    // read a line of data from the stream
           System.out.println("Received: "+ data) ;
      }catch (UnknownHostException e) {System.out.println("Socket:"+e.getMessage());
      }catch (EOFException e){System.out.println("EOF:"+e.getMessage());
      }catch (IOException e){System.out.println("readline:"+e.getMessage());
      }finally {if(s!=null) try {s.close();
          }catch (IOException e) {System.out.println ("close:" + e.getMessage());}}}}

    import java.net.*;
import java.io.*;
public class TCPServer {
public static void main (String args[]) {
      try{
    int serverPort = 7896; // the server port
    ServerSocket listenSocket = new ServerSocket(serverPort);
    while(true) {
        Socket clientSocket = listenSocket.accept();
        Connection c = new Connection(clientSocket);
    }
      } catch(IOException e) {System.out.println("Listen socket:"+e.getMessage());}
}}

class Connection extends Thread {
        DataInputStream in;
        DataOutputStream out;
        Socket clientSocket;
public Connection (Socket aClientSocket) {
    try {
    clientSocket = aClientSocket;
    in = new DataInputStream( clientSocket.getInputStream());
    out =new DataOutputStream( clientSocket.getOutputStream());
    this.start();
     } catch(IOException e) {System.out.println("Connection:"+e.getMessage());}
}

public void run(){
     try {                             // an echo server
    String data = in.readUTF();     // read a line of data from the stream
    out.prepareUTF(data);
     }catch (EOFException e){System.out.println("EOF:"+e.getMessage());
     } catch(IOException e) {System.out.println("readline:"+e.getMessage());
     } finally{ try {clientSocket.close();}catch (IOException e){/*close failed*/}}
}}

Programming Language, Programming

  • Category:- Programming Language
  • Reference No.:- M91510

Have any Question? 


Related Questions in Programming Language

Assignment lispoverviewthe purpose of this assignment is

ASSIGNMENT: LISP Overview The purpose of this assignment is for you to gain some experience designing and implementing LISP programs. This assignment explores only a few of the many interesting LISP features. This assign ...

Assignment instructionsexception handlingfirst create three

Assignment Instructions Exception Handling First, create three exception classes named NumberHighException, NumberLowException, and NumberNegativeException. Both NumberHighException and NumberLowException should be direc ...

Write a function that returns a number given an uppercase

Write a function that returns a number, given an uppercase letter, as follows: def getNumber(uppercaseLetter): Write a test program that prompts the user to enter a phone number as a string. The input number may contain ...

1 take into account the number of hours worked if the

1.) take into account the number of hours worked. If the hours is greater than 40, then calculate 1.5 times the rate times the hours over 40. Add the overtime pay to the regular pay, calculated by multiplying rate times ...

The concepts discussed in this section can also be applied

The concepts discussed in this section can also be applied to eliminate partially dead code. A definition of a variable is partial ly dead if the variable is live on some paths and not others. We can optimize the program ...

Lab ordered doublylinked listobjectivesto introduce the

Lab: Ordered DoublyLinked List Objectives: To introduce the doubly linked list data structure. Converting an implementation of singly-linked lists to an implementation of doubly-linked lists. Strengthen the students unde ...

Pennies for pay you are hired for a job and your employer

Pennies for Pay You are hired for a job and your employer agrees to pay you each day. Your pay rate will be one penny the first day and two pennies the second day, four pennies the third day and continuing to double each ...

Write a program containing two classes named student and

Write a program containing two classes named student and roster, respectively. The program will maintain a current roster of students within a given course. Student data for the program includes student ID, first name, l ...

Derive a class programmer from employee supply a

Derive a class Programmer from Employee. Supply a constructor Programmer Exercise 1: Derive a class Programmer from Employee. Supply a constructor Programmer (string name, double salary) that calls the base-class constru ...

Project on grammarsnbspcourseist 230cmpsc

PROJECT ON GRAMMARS   Course: IST 230/CMPSC 360   Deadline: see the calendar in Canvas for the deadline   Objective: To acquire a comprehensive understanding of the application of grammars and formal language theory to c ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Section onea in an atwood machine suppose two objects of

SECTION ONE (a) In an Atwood Machine, suppose two objects of unequal mass are hung vertically over a frictionless

Part 1you work in hr for a company that operates a factory

Part 1: You work in HR for a company that operates a factory manufacturing fiberglass. There are several hundred empl

Details on advanced accounting paperthis paper is intended

DETAILS ON ADVANCED ACCOUNTING PAPER This paper is intended for students to apply the theoretical knowledge around ac

Create a provider database and related reports and queries

Create a provider database and related reports and queries to capture contact information for potential PC component pro

Describe what you learned about the impact of economic

Describe what you learned about the impact of economic, social, and demographic trends affecting the US labor environmen