일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- class
- javascript
- db
- aws
- gptapi
- iam사용자
- aiapi
- Database
- 패키지설치에러
- 클래스
- 노드버전
- chatGPTAPI
- 웹소켓재시작
- ChatGPT
- gpt3.5turbo
- gitlab
- 버킷생성
- 웹소켓연결
- Express
- Github
- openaiapi
- 웹소켓연결끊김
- nvmrc
- 자바
- git
- nodejs
- 호스팅영역
- GPT3.5
- java
- 클라우드
Archives
- Today
- Total
IT's Jenna
Server 본문
서버란?
- Client가 원격으로 접속할 수 있도록 특정 Port를 Open 해두고, 네트워크를 통해 정보나 서비스를 제공하는 하나의 컴퓨터
네트워크란?
- 다수의 컴퓨터들을 연결해서 서로 통신할 수 있게 만든 형태
- 실제로 전 세계 바다 밑에 해저 광케이블이 연결되어 네트워크 통신이 가능하게끔 만들어져 있다.
프로토콜이란?
- 원거리 통신 장비에서 메세지를 주고받을 때 사용하는 규칙과 양식의 체계
모듈이란?
- 독립된 기능을 하는 하나의 소프트웨어
- 스크립트를 기능 단위로 쪼개는것을 모듈화라고 한다.
http프로토콜이란?
- Hyper Text Transfer Protocol
- WWW(인터넷)상에서 브라우저와 서버 간에 정보를 주고받는 통신 프로토콜
- TCP, UDP (데이터 전송 프로토콜) 사용
- Port : 80
- 웹/앱 모두 사용 가능하다.
- TCP(Transmission Control Protocol) : 연결형 서비스, 수신 여부 확인, 속도 느림, 1:1 연결방식, 연속성보다 신뢰성 있는 전송이 중요할 때 사용, ex.채팅서비스
- UDP (User Datagram Protocol) : 비연결형 서비스, 수신 여부 확인 안 함, 속도 빠름, 1:n 연결방식, 신뢰성보다 연속성이 중요할 때 사용, ex. 화상회의
http프로토콜의 구성
- Header : Client와 Server 간의 부가적인 정보 전송 (데이터 타입, 보안, 압축 알고리즘 등)
- Body : 실제로 전송하는 데이터 (이미지, 문자열, HTML 코드 등)
- Request : Client로부터 받은 요청
- Response : 요청에 대한 Server의 대답
CORS?
- Cross-Origin-Resource-Policy
- 크로스 도메인 이슈
- 허용되지 않은 출처에서의 접근을 제한하는 정책
- Client IP는 사이트 도메인으로 접속, 사이트 도메인이 서버 IP로 접속 (해당 도메인에서만 서버에 접속할 수 있도록 제한해둠)
- 헤더에서 ("Access-Control-Allow-Origin", "특정 도메인 주소")를 입력해두면 해당 도메인 주소만 서버에 접속 가능하다.
- ("Access-Control-Allow-Origin", "*") 경우 모든 도메인에서 접속 가능하다.
데이터 포맷
- XML
- Extensible Markup Language
- 문자 기반의 마크업 언어로 데이터를 주고받는다.
- nodejs에 xml parsing기능이 탑재되어 있진 않지만, npm 사이트를 통해 누군가 만들어둔 패키지를 다운로드 받아서 사용할 수 있다.
- 마크업 언어 : 문서의 기본 정보에 화면에 표시되는 형식이나 구조 등 추가적인 정보를 제공하기 위해 문서 내에 끼워 넣는 언어
- JSON
- Javascript Object Notation
- XML보다 간단하고 용량이 작음, 최근 대부분의 데이터는 JSON 포맷
- Jsonformatter 사이트를 통해 스크립트 확인이 용이하다.
- https://jsonformatter.curiousconcept.com/#
- JSON의 형태
- Object : {“key” : value, “key” : value}
- Array : [1, 2, 3, 4, 5]
- Object의 key는 string만 가능하다.
- Value 값은 string, num, array도 가능하고, array안에 object가 들어가는 것도 가능하다.
- 쇼핑몰의 경우 자사 상품이 네이버, 11번가 등을 통해서 판매되었을 때 서버가 해당 정보를 xml 또는 JSON 포맷으로 받아서 읽는다.
- 해당 데이터 파일을 읽은 후 원하는 형태로 parsing을 진행한다.
<참고>
'Backend > Backend 기본' 카테고리의 다른 글
Express 환경 사용하기 1 (0) | 2021.01.18 |
---|---|
NodeJS 사용 시 필요한 패키지 및 사이트 (0) | 2021.01.13 |
Server 2 (0) | 2021.01.13 |
NodeJs Architecture (0) | 2021.01.09 |
백엔드 기본 개념 및 용어 정리 (0) | 2021.01.09 |
Comments