boostcamp

Day02 학습 정리

daykim 2023. 7. 11. 18:11

리눅스란?

  • Linux는 오픈소스 운영체제(OS)다.
  • 유닉스 기반으로 만들어졌으며, 무료 오픈소스다.
  • 리누즈 토발즈가 미닉스(Minix)라는 운영체제가 불편해 GNU 프로젝트와 합작으로 리눅스를 만들게 되었다.
  • 이 때, 유닉스는 비싼 운영체제라 많은 사람들이 유닉스 같은 무료 운영체제를 만들려고 했다고 한다.
  • 그런다 리누즈 토발즈가 쓰던 BitKeeper가 유료화되어 대체할 프로그램으로 만든 것이 Git이라고 한다. 세상에

 

SSH (Secure SHell)

  • 원격 호스트에 접속하기 위해 사용되는 보안 프로토콜이다.
  • 컴퓨터와 컴퓨터가 public Network를 통해 서로 통신할 때, 보안적으로 안전하게 통신하기 위해 사용하는 프로토콜이다.
  • 예) git push

 

SSH 작동 원리

Client와 Server가 각각의 키를 보유하고 있고, 이 키를 이용해 연결 상대를 인증하고, 안전하게 데이터를 주고 받는다.

  • 중간에 누군가 가로채도, 암호화 되어있기 때문에 무슨 정보인지 알 수 없다.
  • 대칭키 : 암복호화 키가 동일하며, 해당 키를 아는 사람만이 문서를 복호화 할 수 있다. 때문에 키를 교환하거나 할 때, 탈취당할 경우 문제가 발생할 수 있다.
  • 비대칭키 : 대칭키 단점을 해결하기 위한 방식으로, 키가 공개되어있는 공개키는 모든 사람이 접근 가능하고, 각 사용자는 개인키를 가지고 있다. 공개키로 암호화하고, 복호화는 개인키로만 가능하다.

 

가상 머신 (Virtual Machine)

  • 물리적 컴퓨터와 동일한 기능을 제공하는 소프트웨어 컴퓨터다.
  • Hypervisor : 호스트 컴퓨터에서 다수의 운영체제를 동시에 운영하기 위한 논리적 플랫폼이다.

 

포트포워딩 (Port Forwarding)

  • 공유기의 포트를 통해 이 공유기와 연결된 기기의 특정 포트에 진입할 수 있게 하는 기능이다.
  • 호스트(Host) : 네트워크에 연결되어 있는 컴퓨터
  • 게스트(Guest) : 하이퍼바이저로 인해 리소스 사용하는 머신

 

chmod

chmod [option] [mode] [file]

파일의 모드(mode)를 변경하는 명령어다.

  • 파일의 읽기, 쓰기, 실행 권한을 파일 개별적으로 지정할 수 있도록 해, 잘못된 명령어 사용으로 인해 문제가 발생하는 것을 방지할 수 있다.
  • r :파일에 저장된 데이터 읽기
  • w : 파일에 데이터 쓰기
  • x : 파일 실행
  • d : dirctory

 

Node.js 크롤링


Axios

Node.js와 브라우저를 위한 Promise 기반의 HTTP 통신 라이브러리다.
비동기로 HTTP 통신을 가능하게 해주고, return을 Promise 객체로 해주기 때문에 response 데이터를 다루기 쉽다.

axios({
	method: "GET",
	url: url,
	responseType: "type"
});

Promise

  • Promise 객체는 비동기 작업이 맞이할 미래의 완료 또는 실패와 그 결과 값을 나타낸다.
  • 최종 결과를 반환하는 것이 아니고, 미래의 어떤 시점에 결과를 제공하겠다는 **‘약속’**을 반환한다.
  • 다음 중 하나의 상태를 갖는다.
    • 대기(pending): 이행하지도, 거부하지도 않은 초기 상
    • 이행(fulfilled): 연산 성공적으로 완료
    • 거부(rejected*)*: 연산 실패

GET

  • 단순 데이터(페이지 요청, 지정된 요) 요청을 수행할 경우 사용하는 메서드다.

 

async와 await

const example = async () => {
	return "hello";
}

example().then((data) => {
	console.log(data);
});

async

  • 함수의 앞에 붙어서 사용한다.
  • async를 사용할 경우 항상 Promist 객체를 반환한다.
  • 만약 Promise 값이 아니라면, Promise 형태로 값을 감싸 반환한다.

await

  • async 함수 안에서만 사용할 수 있다.
  • 함수 안에서 await를 만나면, Promise가 처리될 때까지 대기한다.
  • await를 이용하면, 콜백 함수 처리 없이 비동기 처리를 할 수 있다.

 

참고자료

'boostcamp' 카테고리의 다른 글

Day06 학습 정리  (0) 2023.07.18
Day04 학습 정리  (0) 2023.07.13
Day03 학습정리  (0) 2023.07.12
Day01 학습정리  (0) 2023.07.10
네이버 부스트캠프 웹 8기  (0) 2023.07.07