Upgrade to Pro — share decks privately, control downloads, hide ads and more …

2017 SW교육 학생동아리 Lecture 2.

Jinny You
December 05, 2017

2017 SW교육 학생동아리 Lecture 2.

2017 SW교육 학생동아리에서 진행한 "리눅스 서버를 연동한 드론 소프트웨어 프로그래밍"강의 자료입니다.

Jinny You

December 05, 2017
Tweet

More Decks by Jinny You

Other Decks in Education

Transcript

  1. Lecture 02 2017 SW교육 학생동아리 학습 목표 1. node Js

    웹 서버 구축 2. 라우팅 이해하기
  2. 프로 오늘의 주제 1. 라즈베리파이에 node JS 설치 후 기본적인

    웹 서버 구축하기 2. 웹 서버의 기본 개념인, 라우팅(Routing) 이해하기
  3. 프로 Node JS 설치하기 1단계 Putty를 활용하여 라즈베리파이의 터미널에 원격접속

    후 로그인! 팀 A 175.112.236.132:5901 팀 B 175.112.236.132:5902
  4. 프로 Node JS 설치하기 2단계 2-1. 설치된 구버전 node js

    삭제하기 -> Y(y) 입력 sudo apt-get remove nodejs 2-2. 완벽히 제거 sudo apt-get autoremove 2-3. npm 제거 sudo apt-get remove npm
  5. 프로 Node JS 설치하기 3단계 3-1. 다운 저장소를 최신 버전으로

    변경 curl –sL https://deb.nodesource.com/setup_8.x | sudo -E bash - 3-2. node Js 설치
  6. 프로 Node JS 웹 서버 열어보기 Real Vnc Viewer 로

    라즈베리파이 VNC 원격접속 하기 마우스 우클릭 ->[Create New] -> [Empty File] 순으로 [app.js] 파일 생성 하기
  7. 프로 웹 서버 실행하기 Putty 터미널 접속 -> cd Desktop

    커맨드로 바탕화면 이동 node app.js 커맨드로 웹 서버 실행
  8. 프로 Npm 활용 오류의 이유 : 앞서 작성했던 코드에서는 express

    라는 모듈을 사용하는데 해당 모듈이 설치되어있지 않기 때문 잠깐! NPM이 뭐죠? npm install express 커맨드를 통해 모듈 설치 Node Package Manager Node JS에서 사용가능 한, 다양한 모듈들이 저장되어 있는 저장소 -> Node JS 프로그래밍을 도와줄 다양한 모듈들이 있다. 다양한 생태계가 구축되어 있다는 말도 이 때문!
  9. 프로 웹 서버 다시 실행 웹 서버 접속해보기 : 웹

    브라우저에 다음 주소 입력 팀 A 175.112.236.132:8887 팀 B 175.112.236.132:8886
  10. 프로 라우팅 이해하기 클라이언트 서버 로그인, 매칭 등 요청 결과

    전송 클라이언트에서 서버로 요청하는 기능은 매우 많다. 로그인을 요청할 수도 있고, 상대방과의 게임 매칭을 연결할 수도 있다.
  11. 프로 라우팅 이해하기 For Example Youtube 동영상 검색 후 주소창을

    보면, 주소 뒤에 results라는 단어가 생겨있다. Youtube 동영상 시청 후 주소창을 보면, 주소 뒤에 watch 라는 단어가 생겨있다. 즉, Youtube에서 검색 결과를 나타낼 때는 results가 담긴 주소로, 동영상 시청 페이지를 나타낼 때는 watch가 담긴 주소로 페이지를 요청하고 있다.
  12. 프로 라우팅 이해하기 검색 결과 페이지 http://youtube.com/results 동영상 시청 페이지

    http://youtube.com/watch 서로 다른 경로를 통해, 제 각각의 기능을 찾아가 수행하는 매커니즘을 라우팅이라고 부르며, 구분된 각각의 기능 또는 모듈 자체를 라우터라고 부른다. 이렇듯, 웹 서버는 기본적으로 주소에 포함된 라우터의 이름을 통해, 제 각각의 기능을 수행하도록 설계되어 지고, 이 덕분에, 클라이언트에서 요청되는 무수한 이벤트를 서버에서 구분하여 기능할 수 있다.
  13. 프로 결론 아이템 구매 로그인 상대 매칭 각각의 기능을 수행하는

    라우터들이 모인 곳이 바로! 서버 클라이언트에서는 이러한, 각각의 라우터를 요청하여 원하는 기능을 수행하도록 통신한다.