일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 컴퓨터공학
- Public
- package-private
- 깃
- 컴퓨터과학
- 신입사원
- 프로그래밍
- spring
- 알고리즘
- 공채
- 신입
- github
- 뮤텍스
- 스터디
- 정보처리기사
- IT
- 스프링
- Effective Java
- CS
- 세마포어
- 우리카드
- 디지털
- OS
- 이펙티브 자바
- 운영체제
- 자바
- java
- 깃허브
- 개발
- 메모리
- Today
- Total
목록Web (8)
주니어 개발자 성장기
캐시와 조건부 요청 프록시 캐시 원서버와 직접 통신하는 경우 시간이 오래걸리기 때문에 프록시 캐시 서버를 통해서 자주 전송하는 데이터들을 캐싱해놓는다. private 캐시: 웹브라우저에서 사용하는 캐시 public 캐시: 프록시 캐시 서버에서 사용하는 공용 캐시 캐시 지시어(directives) - 기타 Cache-Control: public 응답이 public 캐시에 저장되어도 됨 Cache-Control: private 응답이 해당 사용자만을 위한 것임, private 캐시에 저장해야 함(기본 값) Cache-Control: s-maxage 프록시 캐시에만 적용되는 max-age Age: 60(HTTP 헤더) 오리진 서버에서 응답 후 프록시 캐시내에 머문 시간(초) 캐시 무효화 Cache-Contro..
캐시와 조건부 요청 캐시 기본 동작 캐시가 없을 때 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다. 인터넷 네트워크는 하드웨어에 비해서 매우 느리고 비싸다. 브라우저 로딩속도가 느리다. -> 느린 사용자 경험 캐시 적용 응답 헤더에 'cache-control: max-age=60'와 같은 라는 캐시 제어 헤더를 넣어준다.(캐시가 유효한 시간) 응답 결과를 캐시에 저장한다. 그 후 요청부터는 캐시 유효 시간 검증을한다. 유효 시간 이내이면 캐시에서 가져온다. 시간을 초과하면 재요청을 해야 한다. 캐시 덕분에 캐시 가능 시간동안 네트워크를 사용하지 않아도 된다. 비싼 네트워크 사용량을 줄일 수 있다. 브라우저 로딩 속도가 매우 빠르다. 빠른 사용자 경험 검증 헤더와 조건부 요..
일반 정보 From 유저 에이전트의 이메일 정보 일반적으로 잘 사용되지 않음 검색 엔진 같은 곳에서, 주로 사용 요청에서 사용 Referer 이전 웹 페이지 주소 현재 요청된 페이지의 이전 웹 페이지 주소 A -> B로 이동하는 경우 B를 요청할 때 Referer: A를 포함해서 요청 Referer를 사용해서 유입 경로 분석 가능 요청에서 사용 참고: referer는 단어 referrer의 오타 User-Agent 유저 에이전트 애플리케이션 정보 user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 클라이언트의 애플리케이션 정보..
HTTP 헤더 개요 헤더의 형식은 다음과 같다 field-name ":" OWS field-value OWS (OWS: 띄어쓰기 허용) 또한, field-name은 대소문자 구분이 없다. 용도 HTTP 전송에 필요한 모든 부가정보 예) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보, etc 표준 헤더가 너무 많다. 필요시 임의의 헤더도 추가 가능하다. RFC723x 변화 2014년 새로운 헤더 표준인 RFC7230 스펙이 제정된다. 엔티티(Entity) -> 표현(Representation) 변경 Representation = Representation Metadata + Representation Data 표현 = 표현 메타데이터 + 표현 데이터..
상태코드란 ? HTTP 응답의 상태를 나타내는 코드 클라이언트가 인식할 수 없는 상태코드는 상위 상태코드로 해석해서 처리한다. 미래에 새로운 상태코드가 추가되어도 클라이언트를 변경하지 않아도 된다. 1xx(Informational): 요청이 수신되어 처리중 /users , /event => /new-event 원래의 URL을 사용X, 검색 엔진 등에서도 변경 인지 가능 301 Moved Permanently 리다이렉트시 요청 메서드가 GET으로 변하고, 본문이 제거될 수 있음(MAY) 308 Permanent Redirect 301과 기능은 같음 리다이렉트시 요청 메서드와 본문 유지(처음 POST를 보내면 리다이렉트도 데이터 유지) 둘 다 많이 쓰지는 않지만 보통 URI가 영구적으로 이동하면 요구되는 ..
메서드 활용 데이터 전달 방식은 크게 2가지가 있다. 쿼리 파라미터를 통한 데이터 전송 GET 주로 정렬 필터(검색어) 메시지 바디를 통한 데이터 전송 POST, PUT, PATCH 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 클라이언트에서 서버로 데이터 전송 4가지 상황이 있다! 정적 데이터 조회 이미지, 정적 텍스트 문서 동적 데이터 조회 주로 검색, 게시판 목록에서 정렬 필터(검색어) HTML Form을 통한 데이터 전송 회원 가입, 상품 주문, 데이터 변경 HTTP API를 통한 데이터 전송 회원 가입, 상품 주문, 데이터 변경 서버 to 서버, 앱 클라이언트, 웹 클라이언트(Ajax) 정적 데이터 조회 쿼리 파라미터 미사용 이미지, 정적 텍스트 문서 조회는 GET 사용 정적 데이터는 일반..