본문 바로가기
728x90
반응형

network5

CODE [20.08.05/Day_20] Java SE / Network 네트워크 | 다수의 클라이언트에서 메아리 서비스 구현 (멀티 스레드 활용) step4 다수의 클라이언트에게 지속적으로 메아리 서비스하는 서버 구축 다수의 클라이언트에게 지속적으로 서비스하기 위해서는 서버측에 멀티 스레드가 필요하다. 클라이언트가 접속할 때, 서버는 접속한 클라이언트에 대응되는 소켓을 accept()으로 반환받고, 클라이언트와 실제 통신할 ServerWorker Thread 생성 시에 생성자에 해당 소켓을 할당한다. 이렇게 ServerWorker Thread를 생성하고, start() 하는 역할까지가 MultiServer의 할일이다. ⇒ ServerWorker는 MultiServer내 while문에 삽입되어 작동하는 역할을 한다. [ 클라이언트 측 필요 클래스 ] 클라이언트는 step3의 Client를 그대로 사용해도 된다. (https://creamilk88.t.. 2020. 8. 5.
CODE REVIEW [20.08.05/Day_20] Java SE / Network 네트워크 | 메아리 서버/클라이언트 구현 복습 [ Review 복습 ] 서버 클라이언트 ServerSocket(port) → 대표 전화 역할 try 영역 try 영역 ServerSocket.accept() → 대기 상태 Socket socket = ServerSocket.accept(); → 직원 전화 역할 → Socket이 만들어지면(클라이언트 연결되면) 동작(연결) → 클라이언트가 여러 명일 경우 accept() 여러 개 → 한사람과 통화할 경우 (input, output반복) accept() 한 개 socket = new Socket(serverIp, port) → 고객 전화기 역할 → 소캣이 정상적으로 생성됐다는 것은 서버와 접속됨을 의미 → server에 accept가 실행되며, 서버 socket(직원 전화기)이 만들어짐 scanner = .. 2020. 8. 5.
CODE [20.08.04/Day_19] Java SE / Network 네트워크 | 메아리 서버, 클라이언트 프로그램 구현 step3 메아리 서버, 클라이언트 구성 서버는 클라이언트가 보낸 메세지를 입력받아 자신의 콘솔에 출력하고, 다시 그 메세지를 클라이언트로 보내는 역할을 지속적으로 한다. 클라이언트는 스캐너로 콘솔에서 서버에 보낼 메세지를 입력받아 서버로 출력하고, 서버가 보낸 메세지를 다시 입력받아 자신의 콘솔에 출력하는 작업을 지속적으로 한다. 실행 예) Client Program 서버에 보낼 메세지 : 안녕 메아리 서버 (→enter) 서버에서 온 메세지 : 안녕 메아리 서버 *server* Server Program 12192.168.0.115 님이 입장하셨습니다. 12192.168.0.115 님 메세지 : 안녕 메아리 서버 Client Program : 스캐너로 입력받아 서버로 출력, 서버에서 보낸 메세지를 입.. 2020. 8. 4.
[20.08.04/Day_19] Java SE / Network 네트워크 ( Protocol 프로토콜 - TCP-IP & Port | Socket 소켓 ) [ Network 네트워크 ] java 기반의 TCP-IP Network Programming java.net 패키지에 주요 class들이 있다. Protocol 프로토콜 : 통신 규약(약속) TCP/IP : 인터넷 상의 통신 규약 TCP (Transmission Control Protocol) : 전송 제어 프로토콜 데이터 전달 보증 → 신뢰성이 높다. IP (Internet Protocol) : ip address(전화번호와 유사)로 호스트 주소 지정 * 자신의 ip는 cmd창에서 igconfig로 확인할 수 있다. ex) 나의 IP 주소 → 192.168.0.115 참고) DNS (Domain Name Service) : www.daum.net → ip와 연결되는 Domain name이다. Port.. 2020. 8. 4.
CODE [20.08.03/Day_18] Java SE / IO & Thread 스레드 | 파일 생성 및 이동 [ IO & Thread ] Interface /CommonInfo.java package step8; public interface CommonInfo { //public static final // MAKE_PATH : 파일을 생성하여 저장하는 directory String MAKE_PATH = "C:\\kosta203\\test\\repository"; // MUSIC_PATH : 위 경로에 저장된 파일 중 mp3 확장자를 가진 파일들만 이동시키는 directory String MUSIC_PATH = "C:\\kosta203\\test\\music"; // MOVIE_PATH : 위 경로에 저장된 파일 중 avi 확장자를 가진 파일들만 이동시키는 directory String MOVIE_PATH =.. 2020. 8. 3.
728x90
반응형