Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 6ec4bf2

Browse files
committed
Lab_06
1 parent 900f8f5 commit 6ec4bf2

File tree

6 files changed

+227
-0
lines changed

6 files changed

+227
-0
lines changed

‎lab_06/LoadBalancing/Client.java‎

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package lab_06.LoadBalancing;
2+
3+
import java.io.BufferedReader;
4+
import java.io.InputStreamReader;
5+
import java.net.DatagramPacket;
6+
import java.net.DatagramSocket;
7+
import java.net.InetAddress;
8+
9+
public class Client {
10+
static DatagramPacket msgDatagramPacket;
11+
static DatagramSocket clientDatagramSocket;
12+
static byte[] data;
13+
static BufferedReader br;
14+
static int LB_PORT = 5000;
15+
16+
public static void main(String[] args) {
17+
try {
18+
br = new BufferedReader(new InputStreamReader(System.in));
19+
data = new byte[1024];
20+
21+
clientDatagramSocket = new DatagramSocket();
22+
while (true) {
23+
System.out.println("Msg: ");
24+
String msg = br.readLine();
25+
data = msg.getBytes();
26+
msgDatagramPacket = new DatagramPacket(data, data.length, InetAddress.getByName("localhost"), LB_PORT);
27+
clientDatagramSocket.send(msgDatagramPacket);
28+
System.out.println("Packet sent to server at PORT: " +
29+
30+
LB_PORT);
31+
32+
Thread.sleep(1000);
33+
}
34+
35+
} catch (Exception e) {
36+
e.printStackTrace();
37+
} finally {
38+
clientDatagramSocket.close();
39+
}
40+
}
41+
}
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
package lab_06.LoadBalancing;
2+
3+
import java.net.DatagramPacket;
4+
import java.net.DatagramSocket;
5+
6+
/** * RPCServer_Date */
7+
public class LoadBalancer {
8+
static DatagramSocket serverDatagramSocket;
9+
static DatagramPacket clientDataPacket;
10+
static byte buf[];
11+
static int s1 = 0, s2 = 5;
12+
static int s2PORT = 5002, s1PORT = 5001;
13+
14+
public static void main(String[] args) {
15+
try {
16+
System.out.println("Load Balancer Daemon up");
17+
buf = new byte[1024];
18+
serverDatagramSocket = new DatagramSocket(5000);
19+
clientDataPacket = new DatagramPacket(buf, buf.length);
20+
while (true) {
21+
serverDatagramSocket.receive(clientDataPacket);
22+
int PORTtoSend = 0;
23+
String currTime = new String(clientDataPacket.getData(), 0, clientDataPacket.getLength());
24+
byte[] operationRes = currTime.getBytes();
25+
if (s1 > s2) {
26+
PORTtoSend = s2PORT;
27+
s2++;
28+
} else {
29+
PORTtoSend = s1PORT;
30+
s1++;
31+
32+
}
33+
DatagramPacket resDataPacket = new DatagramPacket(operationRes, operationRes.length,
34+
clientDataPacket.getAddress(), PORTtoSend);
35+
serverDatagramSocket.send(resDataPacket);
36+
System.out.println("Sent packet to server at: " + resDataPacket.getPort());
37+
}
38+
} catch (Exception e) {
39+
e.printStackTrace();
40+
} finally {
41+
serverDatagramSocket.close();
42+
}
43+
}
44+
}
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
package lab_06.LoadBalancing;
2+
3+
import java.net.DatagramPacket;
4+
import java.net.DatagramSocket;
5+
6+
/** * RPCServer_Date */
7+
public class MyServerOne {
8+
static DatagramSocket serverDatagramSocket;
9+
static DatagramPacket clientDataPacket;
10+
static byte buf[];
11+
static int PORT = 5001;
12+
13+
public static void main(String[] args) {
14+
try {
15+
System.out.println("Waiting for client packet...");
16+
buf = new byte[1024];
17+
serverDatagramSocket = new DatagramSocket(PORT);
18+
clientDataPacket = new DatagramPacket(buf, buf.length);
19+
while (true) {
20+
serverDatagramSocket.receive(clientDataPacket);
21+
String res = new String(clientDataPacket.getData(), 0, clientDataPacket.getLength());
22+
System.out.println("Received: " + res);
23+
}
24+
} catch (Exception e) {
25+
e.printStackTrace();
26+
} finally {
27+
serverDatagramSocket.close();
28+
}
29+
}
30+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package lab_06.LoadBalancing;
2+
3+
import java.net.DatagramPacket;
4+
import java.net.DatagramSocket;
5+
6+
/** * RPCServer_Date */
7+
public class MyServerTwo {
8+
static DatagramSocket serverDatagramSocket;
9+
static DatagramPacket clientDataPacket;
10+
static byte buf[];
11+
static int PORT = 5002;
12+
13+
public static void main(String[] args) {
14+
try {
15+
System.out.println("Waiting for client packet...");
16+
buf = new byte[1024];
17+
serverDatagramSocket = new DatagramSocket(PORT);
18+
clientDataPacket = new DatagramPacket(buf, buf.length);
19+
while (true) {
20+
serverDatagramSocket.receive(clientDataPacket);
21+
String res = new String(clientDataPacket.getData(), 0, clientDataPacket.getLength());
22+
System.out.println("Received: " + res);
23+
}
24+
} catch (Exception e) {
25+
System.out.println(e.toString());
26+
} finally {
27+
serverDatagramSocket.close();
28+
PORT++;
29+
}
30+
}
31+
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package lab_06.ShareMemory;
2+
3+
import java.io.*;
4+
import java.net.*;
5+
6+
public class SharedMemoryClient {
7+
public static void main(String args[]) throws Exception {
8+
BufferedReader sin;
9+
PrintStream sout;
10+
BufferedReader stdin;
11+
Socket sk = new Socket(InetAddress.getLocalHost(), 2000);
12+
sin = new BufferedReader(new InputStreamReader(sk.getInputStream()));
13+
sout = new PrintStream(sk.getOutputStream());
14+
stdin = new BufferedReader(new InputStreamReader(System.in));
15+
String s;
16+
while (true) {
17+
System.out.println("Client: ");
18+
s = stdin.readLine();
19+
sout.println(s);
20+
s = sin.readLine();
21+
System.out.println("Server replied: " + s);
22+
break;
23+
}
24+
sin.close();
25+
sout.close();
26+
stdin.close();
27+
}
28+
29+
}
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
package lab_06.ShareMemory;
2+
3+
import java.io.*;
4+
import java.net.*;
5+
import java.util.*;
6+
7+
public class SharedMemoryServer {
8+
9+
static int a = 50;
10+
static int count = 0;
11+
12+
public static int getA(PrintStream cout) {
13+
count++;
14+
--a;
15+
cout.println(a);
16+
return a;
17+
}
18+
19+
public void setA(int a) {
20+
SharedMemoryServer.a = a;
21+
}
22+
23+
public static void main(String args[]) throws Exception {
24+
String op;
25+
ServerSocket ss = new ServerSocket(2000);
26+
while (true) {
27+
Socket sk = ss.accept();
28+
BufferedReader cin = new BufferedReader(new InputStreamReader(sk.getInputStream()));
29+
PrintStream cout = new PrintStream(sk.getOutputStream());
30+
System.out.println("Client request from" + sk.getInetAddress().getHostAddress() + " accept");
31+
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
32+
String s;
33+
s = cin.readLine();
34+
Scanner sc = new Scanner(s);
35+
op = sc.next();
36+
if (op.equalsIgnoreCase("show")) {
37+
} else {
38+
cout.println("Check Syntax");
39+
break;
40+
}
41+
System.out.println("Count: " + count);
42+
sk.close();
43+
44+
cin.close();
45+
cout.close();
46+
stdin.close();
47+
sc.close();
48+
} // close while loop ss.close();
49+
ss.close();
50+
}
51+
52+
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /