면접공부20 HTTP / HTTPS 세션 연결 차이점 & 구글에서 검색어 입력시 네트워크 과정 구글에 검색어를 입력하고 검색을 하면 다음과 같은 네트워크 과정 클라이언트(사용자) 측에서 구글 검색 페이지 URL을 입력합니다. 클라이언트(사용자) 측에서 브라우저가 HTTP GET 요청 메시지를 생성합니다. 이 요청 메시지는 검색어와 함께 구글 서버로 전송됩니다. 클라이언트(사용자)와 구글 서버 간의 TCP/IP 연결을 수립합니다. 이 과정에서 3-way handshake가 일어나며, 클라이언트(사용자)와 구글 서버 간의 안전한 통신이 가능한 세션 키가 생성됩니다. ( 3-way handshake가 일어난 후 https 통신으로 ssl/tls 핸드세이크과정이 일어나 안전한 통신을 위한 세션키가 생성됨) 구글 서버 측에서 검색어에 대한 적절한 결과를 검색합니다. ( 데이터를 뽑아온다) 구글 서버 측에서.. 2023. 4. 2. MVC패턴이란? MVC(Model-View-Controller)패턴은 아키텍쳐를 설계하기 위한 디자인 패턴입니다. MVC 패턴은 애플리케이션을 개발할 때 그 구성요소를 3가지로 나눕니다. Model: 데이터를 저장하는 컴포넌트 View: 사용자 인터페이스(UI) 컴포넌트 Controller: 사용자의 요청을 처리하고 Model과 View를 중개하는 컴포넌트 아키텍쳐 : 최적화를 목표로 두고 시스템 구성과 동작원리 그리고 시스템의 구성환경등을 설명 및 설계하는 청사진 또는 설계도 2021. 6. 4. 로컬 : 세션 스토리지 , 쿠키 1. 쿠키의 단점을 보완해 HTML5에서 '웹스토리지'라는 기술 탄생. 1-1) 웹스토리지 : 로컬스토리지, 세션스토리지. 1-2) 웹스토리지는 Key와 Value 형태로 이루어짐. 1-3) 웹스토리지는 클라이언트에 대한 정보를 저장. 1-4) 웹스토리지는 로컬에만 정보를 저장, 쿠키는 서버와 로컬에 정보를 저장. 2. 로컬스토리지는 클라이언트에 대한 정보를 영구적으로 저장 ex) 자동 로그인 저장 3. 세션스토리지는 세션 종료 시(브라우저 닫을 경우) 클라이언트에 대한 정보 삭제 ex) 입력 폼 정보 저장 3-1) 로컬&세션스토리지 장점1 : 서버에 불필요하게 데이터를 저장하지 않는다. 3-2) 로컬&세션스토리지 장점2 : 용량이 크다. (약 5Mb, 브라우저마다 차이 존재) 3-3) 로컬&세션.. 2021. 6. 3. WAS ,웹서버 || 웹서버 ex) Apache, Nginx -정적인 컨텐츠를 제공하는 서버입니다. WAS(Web Application Server) ex) Tomcat, WebLogic, WebSphere, Jeus, JBoss -DB조회나, 어떤 로직을 처리해야 하는 동적인 컨텐츠를 제공하는 서버입니다. -대부분의 WAS는 정적인 컨텐츠를 제공해주고있어 웹서버 없이 WAS만 존재할수있습니다. 웹 서버 사용 이유 -WAS 앞에 웹서버를 둬서 정적인 문서만 처리하도록하고, WAS는 애플리케이션의 로직만 수행하도록 기능을 분배하여 서버이 부담을 줄이기 위한것입니다. -WAS의 환경설정 파일을 외부에 노출시키지 않도록 하기 위해서입니다. (클라이언트와 연결하는 포트가 직접 was에 연결되있다면 중요한 설정파일들이 노출될수있기때문.. 2021. 6. 3. React || Redux React -facebook에서 만든 ui컴포넌트 라이브러리 -컴포넌트 기반 아키텍쳐이다(캡슐화 확정성 결합성 재사용성 같은 이점이있다) 장점 1. Virtual DOM을 사용함으로써 DOM처리가 빠릅니다. (Virtual DOM과 실제 DOM을 비교하여 변경된 부분만 반영합니다.) 2. 서버와 클라이언트 사이드 렌더링 지원을 통해 브라우저측 초기 렌더링 딜레이를 줄입니다. 3. Component의 가독성이 높으며, UI 수정 및 재사용성이 높습니다. 4. 라이브러리 이므로 다른 프레임워크와 혼용하여 개발 할수도 있습니다. 5. 메모리 관리와 성능이 뛰어나다 단점 1. View Only, View 이외의 기능은 써드파티 라이브러리를 이용하거나 직접 구현해야 합니다. 2. IE8 이하의 버전은 지원하지 않.. 2021. 6. 2. 토큰기반인증 || 서버기반인증 서버 기반 인증 시스템 - 서버 측에서 유저들의 정보를 기억하고 있는 시스템입니다. 문제점 세션 사용자가 인증을 할 때, 서버는 이러한 정보를 저장해야 하고 이를 세션(Session)이라고 부른다. 대부분의 경우에는 메모리에 저장하는데, 로그인 중인 사용자가 늘어날 경우에는 서버의 RAM에 부하가 걸리게 된다. 이를 피하기 위해 데이터베이스에 저장을 하기도 하는데, 이러한 방식 역시 데이터베이스에 무리를 줄 수 있다. 확장성 사용자가 늘어나게 되면 더 많은 트래픽을 처리하기 위해 여러 프로세스를 돌리거나 컴퓨터를 추가하는 등 서버를 확장해야 한다. 세션을 사용한다면 세션을 분산시키는 시스템을 설계해야 하지만 이러한 과정은 매우 어렵고 복잡한다. CORS(Cross-Origin Resource Sharin.. 2021. 6. 1. 이전 1 2 3 4 다음