소켓통신
소켓 통신은 프로토콜 아닌 OS가 만든 인터페이스다
OS가 IP연결하고 PORT만 적어두면 통신 시켜줄테니 이것만 지켜! 라고 말하는것
단방향 통신
수신자가 송신자한테 RESPONSE하지 않는것
반이중통신
전화처럼 동시에 안되고 무전기 처럼 한번에 한명씩만 가능
블로킹 서버 통신
클라이언트가 요청을 하면 동기적으로 응답하는서버 = 동기서버 or 블로킹 서버
->요청을 받고 처리할때까지 다른 작업을 할 수없다
즉 여러 컴퓨터에서 데이터를 받으면 쓰레드가 없기 때문에 하나씩만 데이터를 처리 할 수 있다
멀티스레드 비동기 서버 통신
쓰레드를 사용하여 여러 요청들을 병렬로 처리가능
웹서버
클라이언트가 리퀘스트를 해야 response를 해준다
html == 세계 공통 워드 프로그램
웹 부라우저 == html 뷰어
html이 모여있는 컴퓨터 == 서버
서버에 접근하기 위해서 url사용
url = ip주소 + 포트번호 + 파일명
메서드 + url == 리퀘스트
스테이트리스
서버는 클라이언트와 연결되어 있는 회선을 한번 사용하면 버린다 -> 유지하면 비용이 너무 많이 든다
서버는 클라이언트가 접속 기록이 있는지 알지 못한다
스테이트풀
서버가 리퀘스트 할때 세션id라는것을 클라이언트한테 준다
마찬가지로 회선이 끊긴다
서버는 세션이라는 새로운 메모리 영역을 만들고 클라이언트는 쿠키라는 것을 만들어 세션 id를 보관한다
다시 서버에 접근할때 클라이언트는 쿠키에 있는 세션id를 서버에 주고
서버는 세션에 있는 세션id와 비교해서 접근이력이 있는지 확인한다
이를 인증이 아닌 스테이트 풀 이라고 한다->그냥 이력이 있는지 없는지만 확인 하는것
세션은 그저 서버의 메모리 영역이다
'SpringBoot > PNUMiniBootCamp' 카테고리의 다른 글
CH07,CH08 서블릿(PNU-BACKEND-BOOTCAMP) (1) | 2024.01.23 |
---|---|
CH02 통신,CHO3 스트림과 버퍼(PNU-BACKEND-BOOTCAMP) (1) | 2024.01.23 |
CH01 자바 OOP(PNU-BACKEND-BOOTCAMP) (0) | 2024.01.22 |