일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 스프링 핵심 기능
- Spring Boot
- http
- 그리디
- JPQL
- transaction
- pointcut
- Thymeleaf
- Proxy
- 스프링
- Android
- spring
- 김영한
- 알고리즘
- 자바
- jpa
- JDBC
- Exception
- SpringBoot
- AOP
- kotlin
- springdatajpa
- Greedy
- java
- 스프링 핵심 원리
- db
- Servlet
- 인프런
- QueryDSL
- 백준
- Today
- Total
목록http (32)
개발자되기 프로젝트
서버가 클라이언트이 상태를 보존하지 않음 장점 : 서버 확장성 높음, 스케일 아웃 단점 : 클라이언트가 추가 데이터 전송필요. 1. 상태 유지 :Stateful 서버가 클라이언트의 이 전 상태를 보존 2. 무상태 : Stateless 서버가 클라이언트의 이 전 상태를 보존하지 않음 서버는 클라이언트가 이전에 어쨌는지 모름 3. Stateful, Stateless 차이 상태 유지 : 중간에 다른 점원으로 바뀌면 안된다. 중간에 다른 점원으로 바뀔 때 상태 정보를 다른 점원에게 미리 알려줘야 한다. 무상태 : 중간에 다른 점원으로 바뀌어도 된다. - 갑자기 클라이언트 요청이 증가해도 서버 투입하면 됨. - 항상 같은 서버가 유지되어야 한다. 무상태는 응답 서버를 쉽게 바꿀 수 있다 --> 서버 무한증설 ㄷㄷ..
Request, Response 구조 클라이언트는 HTTP 메시지를 통해 서버에 요청을 보내고 응답 대기 서버가 요청에 의한 결과를 만들어서 응답함 이처럼 클라이언트와 서버를 분리하는 것이 중요하다. 비즈니스 로직과 데이터는 서버에 밀어넣고 클라이언트는 사용성 ui에 집중. 서버와 클라이언트가 각각 독립적으로 진화? 가능.
1. HTTP란? HyperText Transfer Protocol HTTP 메시지에 모든 것을 전송. 2. HTTP 버전 HTTP/1.1 1997년 : 웬만한 기능 다 들어가있음 HTTP/2 2015년 : 성능 개선 HTTP/3 진행 중 : TCP 대신 UDP사용, 성능개선 3. 기반 프로토콜 TCP : HTTP/1.1, HTTP/2 UDP : HTTP/3 현재 HTTP/1.1 HTTP/2, HTTP/3 증가 중 4. HTTP 특징 클라이언트 서버 구조 무상태 프로토콜(STATELESS), 비연결성 HTTP 메시지를 통해 통신 단순함, 확장 가능
1. URI URI??? - Uniform Resource Identifier - 자원의 식별 방법 URI? URL? URN? - URI는 로케이터(Locator), 이름(Name) 또는 두 다 추가로 분류될 수 있다. - RL(Resource Locator) : 리소스가 여기있다. - RN(Resource Name) : 리소스의 이름! URL, URN 비교 URI 뜻 - Uniform : 리소스 식별하는 통일된 방식 - Resource : 자원, URI로 식별할 수 있는 모~든 것 - Identifier : 다른 항목과 구분하는데 필요한 정보, 식별자 URL, URN - URL : Locator, 리소스가 있는 위치 지정 - URN : Name, 리소스에 이름을 부여 - 위치는 변할 수 있지만, 이름은..
IP는 기억하기 어려워..... IP는 변경될 수 있음. 1. DNS란? Domain Nama System 전화번호부 도메인 명을 IP 주소로 변환 EX google.com --> 200.200.200.2
한 IP에서 여러 application이 돌아가면 어떻게 패킷을 구분함..? TCP/IP 패킷 정보를 보면 출발지 PORT, 목적지 PORT정보가 있다. IP + PORT개념임! TCP/IP를 한꺼번에 TCP/IP 패킷이라 부르고 IP, PORT 정보가 있음. 같은 IP내에서 APPLICATION을 구분하는 방법이 PORT임. Port 할당 - 0 ~ 65535 할당 가능 - 0 ~ 1023 : 잘 알려진 포트, 사용하지 않는 것이 좋음 FTP - 20, 21 TELNET - 23 HTTP - 80 HTTPS -443
1. 인터넷 프로토콜 스택의 4계층 애플리케이션 계층 - HTTP, FTP 전송 계층 - TCP, UDP 인터넷 계층 - IP 네트워크 인터페이스 계층 TCP는 IP위에 얹어져서 보완하는 기능. 2. 프로토콜 계층 3. 패킷 4. TCP/IP 패킷 정보 5. TCP 의 특징 : ip로만 해결되지 않던 문제 보완함. 전송 제어 프로토콜(Transmission Control Protocol) 연결지향 - TCP 3 way handshake(가상 연결) --> 연결을 하고! 메세지 보냄. 데이터 전달 보증 : 패킷 누락되면 알 수 있음. 순서 보장 신뢰할 수 있는 프로토콜 현재는 대부분 TCP 사용 6. 연결지향, TCP 3way handshake - 메세지 세 번 주고받음. SYN : 접속 요청 메세지 AC..
1. 인터넷 통신 인터넷 망은 굉장히 복잡하다.. 노드라는 수 많은 서버를 거져처서 정보가 전달이 되어야 한다. 어떤 규칙을 가지고 전달이 될까? 2. IP(인터넷 프로토콜) IP주소를 통해 일정한 규칙을 갖고 처리 클라이이언트가 ip주소를 받음 서버도 ip주소가 있음 인터넷 프로토콜의 역할 - 지정한 IP주소에 데이터 전달 - 패킷(Packet)이라는 통신 단위로 데이터 전달 IP패킷 정보 구성 클라이언트 패킷을 인터넷 망에 던짐! 노드(서버)들은 프토토콜에 따라 패킷을 노드끼리 던짐 최종으로 목적지 IP까지 전달됨. 다시 서버측은 서버 패킷을 같은 방식으로 전달함. 클라이언트에서 보낼 때 거치는 노드와, 서버측에서 보낼 때 거치는 노드는 다를 수 있음. 3. IP프로토콜의 한계 비 연결성 - 패킷을 ..