package rmi.rmiimage;
import java.rmi.Naming;
class StartBenchmark extends Thread {
int servernumber;
static BenchMark BM[] = new BenchMark[26];
CpuPanel cpu[] = new CpuPanel[26];
public static boolean checkServers(int i, String servername) {
try {
System.out.println("Looking up servers...");
System.out.println("Checking server " + servername);
BM[i] = (BenchMark) Naming.lookup(servername);
System.out.println("Server checked!");
return true;
} catch (Exception e) {
System.out.println("The exception in checking server: " + e);
}
return false;
}
public StartBenchmark(int i, CpuPanel Cpu) {
servernumber = i;
cpu[i] = Cpu;
}
public void run() {
long starttime, endtime;
try {
starttime = System.currentTimeMillis();
BM[servernumber].multiplyBench(999999);
endtime = System.currentTimeMillis();
System.out.println("The time taken is: " +
(endtime - starttime));
cpu[servernumber].setSpeed((endtime - starttime));
} catch (Exception e) {
System.out.println(e);
}
}
}
public class Client {
static String serverNames[] = {
"rmi://" + "192.107.38.221" + ":1099/HelloServer",
"rmi://" + "192.107.38.222" + ":1099/Helloserver",
"rmi://" + "192.107.38.223" + ":1099/HelloServer",
"rmi://" + "192.107.38.224" + ":1099/HelloServer",
"rmi://" + "192.107.38.225" + ":1099/HelloServer",
"rmi://" + "192.107.38.226" + ":1099/HelloServer",
"rmi://" + "192.107.38.227" + ":1099/HelloServer",
"rmi://" + "192.107.38.228" + ":1099/HelloServer",
"rmi://" + "192.107.38.229" + ":1099/HelloServer",
"rmi://" + "192.107.38.230" + ":1099/HelloServer",
"rmi://" + "192.107.38.231" + ":1099/HelloServer",
"rmi://" + "192.107.38.80" + ":1099/HelloServer",
"rmi://" + "192.107.38.81" + ":1099/HelloServer",
"rmi://" + "192.107.38.82" + ":1099/HelloServer",
"rmi://" + "192.107.38.83" + ":1099/HelloServer",
"rmi://" + "192.107.38.84" + ":1099/HelloServer",
"rmi://" + "192.107.38.85" + ":1099/HelloServer",
"rmi://" + "192.107.38.86" + ":1099/HelloServer",
"rmi://" + "192.107.38.87" + ":1099/HelloServer",
"rmi://" + "192.107.38.88" + ":1099/HelloServer",
"rmi://" + "192.107.38.89" + ":1099/HelloServer",
"rmi://" + "192.107.38.92" + ":1099/HelloServer",
"rmi://" + "192.107.38.93" + ":1099/HelloServer",
"rmi://" + "192.107.38.94" + ":1099/HelloServer",
"rmi://" + "192.107.38.95" + ":1099/HelloServer",
"rmi://" + "192.107.38.96" + ":1099/HelloServer",
"rmi://" + "192.107.38.97" + ":1099/HelloServer",
"rmi://" + "192.107.38.98" + ":1099/HelloServer"
};
StartBenchmark sb[] = new StartBenchmark[serverNames.length];
boolean b[] = new boolean[serverNames.length];
public Client(int statearr[]) {
for (int i = 0; i < serverNames.length; i++) {
if (statearr[i] == 1)
b[i] = StartBenchmark.checkServers(i,
serverNames[i]);
}
}
public void Start(int i, CpuPanel Cpu) {
if (b[i]) {
sb[i] = new StartBenchmark(i, Cpu);
sb[i].start();
} else
System.out.println("Server " + serverNames[i] + " not found");
}
}