다중 접속 서버 구현
Multi-threading
Multi-threading 을 이용한 다중 접속 서버, 문자열 전송 - 동시에 많은 접속자를 처리할 수 있습니다.
서버 생성
ThreadServer.java
import java.io.*;
import java.net.*;
public class ThreadServer {
public static void main(String[] args) {
System.out.println("****************************************");
System.out.println("Thread를 이용한 다중 접속 서버 작동됨...");
System.out.println("****************************************");
ServerSocket server = null;
int connectCount=0;
try {
server = new ServerSocket(2022);
while(true) {
Socket client = server.accept();
InetAddress ia = client.getInetAddress();
int port = client.getLocalPort();// 접속에 사용된 PORT
String ip = ia.getHostAddress(); // 원격 Client IP
++connectCount; //접속자수 카운트
System.out.print(connectCount);
System.out.print("클라이언트 접속-Local Port: "+ port);
System.out.println(" Client IP: " + ip);
//Client와 통신할 스레드 구현 클래스
Handler handler = new Handler(client);
handler.start();
}
} catch(IOException ioe) {
System.err.println("Exception generated...");
} finally {
try {
server.close();
} catch(IOException ignored) {}
}
}
}Handler.java
클라 생성
ThreadClient.java
실행 하기
다중 접속 동시 처리
Multi-threading을 이용한 다중 접속 서버, 난수 발생을 이용한 실시간 주가 전송 - 동시에 많은 접속자를 처리할 수 있습니다.
서버 생성
ThreadServer2.java
StockHandler.java
클라 생성
ThreadClient2.java
실행 하기
서버 실행
클라이언트 살행 - 추가 CMD 실행
Last updated