2022/04/18 오늘의 공부 정리

찬찬잉·2022년 4월 18일
0
post-thumbnail

소켓이란?

소켓은 특정한 파이프의 끝, 파이프의 이음쇠 또는 위생 기구를 수용하기 위해 확장한 것으로, 또 다른 파이프의 끝이나 파이프 이음쇠을 가리킨다.

프로그램, 소켓통신에서 소켓이란?

소켓(Socket)은 프로세스가 드넓은 네트워크 세계로 데이터를 내보내거나 혹은 그 세계로부터 데이터를 받기 위한 실제적인 창구 역할을한다.
그러므로 프로세스가 데이터를 보내거나 받기 위해서는 반드시 소켓을 열어서 소켓에 데이터를 써보내거나 소켓으로부터 데이터를 읽어들여야한다.

소켓은 프로토콜, IP주소, 넘버로 정의된다.
  • 프로토콜 : 프로토콜은 원래 외교상의 언어로써 의례나 국가간에 약속을 의미하며, 통신에서는 어떤 시스템과 통신을 원활하게 수용하도록 해주는 통신 규약, 약속
  • IP : 전 세계 컴퓨터에 부여된 고유의 식별 주소
    *포트(port) : 포트는 네트워크 상에서 통신하기 위해서 호스트 내부적으로 프로세스가 할당받아야 하는 고유한 숫자이다. 한 호스트 내에서 네트워크 통신을 하고 있는 프로세스를 식별하기 위해 사용되는 값이므로, 같은 호스트 내에서 서로 다른 프로세스가 같은 포트 넘버를 가질 수 없다.

다시말해 소켓은 떨어져 있는 두 호스트를 연결해주는 도구로써 인터페이스의 역할을 하는데 데이터를 주고 받을 수 있는 구조체로 소켓을 통해 데이터 통로가 만들어진다. 이러한 소켓은 역할에 따라 서버 소켓, 클라이언트 소켓으로 구분된다.

소켓 통신 흐름도

웹소켓이란? 그리고 HTTP통신 방법과 WebSocket의 차이점?

참고 출처

웹 소켓은 HTML5표준 기술로, 사용자의 브라우저와 서버 사이의 동적인 양방향 연결 채널을 구성합니다. Websocket API를 통해 서버로 메세지를 보내고, 요청 없이 응답을 받아오는 것이 가능합니다.

WebSocket 소켓이 필요한 경우

  • 실시간 양방향 데이터 통신이 필요한 경우.
  • 많은 수의 동시 접속자를 수용해야 하는 경우.
  • 브라우저에서 TCP 기반의 통신으로 확장해야 하는 경우.
  • 개발자에게 사용하기 쉬운 API가 필요할 경우.
  • 클라우드 환경이나 웹을 넘어 SOA(Service Oriented Architecture) 로 확장해야 하는 경우

웹의 통신 방법

프론트와 DB는 소통을 안전하게 하기 위해서 중간 과정인 backend 과정을 통해서 작업하게됩니다.
프론트와 백엔드가 소통을 위해선 API를 통해서 소통을하게 되는데 이걸 편하게 라이브러리를 사용하여 작업할 수 있습니다. 그 라이브러리 중에서 한가지가 axios입니다.

백엔드와 DB가 통신하기 위해서 쿼리를 사용하여서 소통하게되는데 그것을 백에서 가공하여 API를 통해 프론트와 소통하는것.

web이란?

월드 와이드 웹(World Wide Web)이란 인터넷에 연결된 사용자들이 서로의 정보를 공유할 수 있는 공간을 의미합니다. 간단히 줄여서 WWW나 W3라고도 부르며, 간단히 웹(Web)이라고 가장 많이 불립니다.

웹에서는 HTML 언어를 사용하여 작성된 하이퍼텍스트 문서를 웹 페이지(web page)라고 부릅니다.

이러한 웹 페이지들 중에서 서로 관련된 내용으로 작성된 웹 페이지들의 집합을 웹 사이트(web site)라고 합니다.

script란?

동작하는 대본과 같다.
CSS는 디자인, HTML은 하이퍼텍스트링크로 문서를 디자인하여 동적으로 만든다.

profile
디자이너, 기획자 출신의 개발자

0개의 댓글