8/24 TIL HTML메소드/소켓/기술면접http 동작방식

이승준·2023년 8월 24일
0

소켓으로 해야할 것과 API로 처리해야 할 것을 구분했다.

http

  • 유저조회
  • 룸넘버가져오기
  • 만들기
  • 오프라인인 사람이랑 대화하기 (메시지 보내기)

소켓

  • 접속
  • 접속한 사람들 띄우기
  • 온라인 된 사람이랑 대화하기

작업

  • 몽고DB 연결하기

  • 테이블? 컬렉션 만들기

    • room_id
    • send_message
    • recieve_message
    • created_at
  • roomId 로 구분하여 메시지를 가지고오는.. 로직?

브라우저의 작동방식에 대해서 설명해주세요.

  1. 사용자의 요청 및 주소 해석:
    사용자가 주소 표시 줄에 웹 페이지의 URL(Uniform Resource Locator)을 입력하면, 브라우저는 해당 URL을 해석하여 서버의 IP 주소를 얻습니다. 이 과정은 DNS(Domain Name System)을 통해 이루어집니다. DNS는 사람이 이해하기 쉬운 도메인 이름을 컴퓨터가 이해할 수 있는 IP 주소로 변환해주는 역할을 합니다.

  2. 서버와의 연결:
    브라우저는 얻은 IP 주소를 사용하여 웹 서버에 연결합니다. 이를 위해 HTTP(Hypertext Transfer Protocol)나 HTTPS(Hypertext Transfer Protocol Secure)와 같은 통신 프로토콜을 사용합니다. HTTPS의 경우 데이터는 암호화되어 보안이 강화됩니다.

  3. 요청 및 응답:
    브라우저는 서버에게 해당 웹 페이지나 자원을 요청합니다. 요청은 HTTP 요청 메시지로 전송되며, 이 메시지에는 사용자 에이전트 정보, 요청 종류(GET, POST 등), 요청하는 리소스의 경로 등이 포함됩니다. 서버는 이 요청을 받고 해당하는 리소스를 응답으로 반환합니다.

  4. HTML 문서 해석 및 렌더링:
    받아온 응답은 주로 HTML(Hypertext Markup Language)로 작성된 웹 페이지의 내용을 포함합니다. 브라우저는 이 HTML 문서를 해석하여 DOM(Document Object Model)을 생성합니다. DOM은 웹 페이지의 구조와 내용을 표현하는 계층적인 구조입니다.

  5. CSS 및 JavaScript 처리:
    브라우저는 웹 페이지의 스타일을 결정하는 CSS(Cascading Style Sheets)도 처리합니다. CSS는 웹 페이지의 레이아웃, 디자인, 색상 등을 정의하는 역할을 합니다. 브라우저는 CSS를 해석하여 렌더 트리를 생성합니다.
    또한 브라우저는 JavaScript 코드를 실행하여 웹 페이지에 동적인 기능을 부여합니다. JavaScript는 웹 페이지 내에서 상호작용하거나 웹 페이지를 변경하는 데 사용됩니다.

  6. 렌더링과 표시:
    브라우저는 생성된 DOM과 렌더 트리를 사용하여 웹 페이지를 화면에 표시합니다. 이때 HTML 요소의 위치, 스타일, 크기 등이 고려되어 웹 페이지가 시각적으로 보여지게 됩니다.

  7. 사용자 상호작용 및 이벤트 처리:
    사용자가 웹 페이지와 상호작용할 때(클릭, 입력 등), 브라우저는 이벤트를 감지하고 이벤트 핸들러를 실행하여 적절한 동작을 수행합니다. 이로써 웹 페이지는 사용자와의 실시간 상호작용을 가능케 합니다.

  8. 웹 페이지의 자원 관리:
    웹 페이지는 이미지, 스타일 시트, 스크립트 파일 등 다양한 자원으로 구성됩니다. 브라우저는 이러한 자원을 서버에서 요청하고 받아옵니다. 또한 이를 브라우저 캐시에 저장하여 다음에 같은 자원을 요청할 때 더 빠르게 불러올 수 있습니다.

이러한 과정을 통해 브라우저는 웹 페이지를 검색하고 해석하여 사용자가 시각적으로 보는 웹 페이지를 구성하게 됩니다.

0개의 댓글