Node.js (8) 썸네일형 리스트형 K6 성능 테스트 0. 원도우에서 K6 설치하기 https://dl.k6.io/msi/ k6 Packages dl.k6.io 공식 사이트에서 k6-latest-amd64.msi 파일을 다운로드 받아서 설치를 진행합니다. 1. k6 테스트 스트립트 작성 및 실행 import http from "k6/http"; // vus는 가상 유저를 설정하는 항목 // duration은 몇 초동안 테스트를 진행할지 선택하는 옵션 export const options = { // 100명이 10초 동안 요청 로직 작성 vus: 100, duration: "10s" }; export default function(){ // 테스트에 사용할 요청 메서드,주소 http.get("http://localhost:3002"); } k6 run 파일.. 05. 노드와 비동기 처리 1. 스레드 작업을 처리학 위해 자원을 사용하는 단위를 가리킵니다. 하나의 작업이 실행되는 최소 단위 자바스크립트에서는 이런 스레드가 하나밖에 없어서 한 번에 하나의 작업만 처리할 수 있습니다. 반면에 자바를 비롯한 대부분의 백엔드 프로그래밍 언어는 멀티 스래드 언어입니다. 스레드를 여러 개 가지고 있어서 동시에 여러 작업을 실행할 수 있습니다. 2. 블록킹I/O 과 논블록킹I/O 2.1 블록킹I/O 여기서 I/O는 Input과 Output을 나타내며 자료를 주고박은다는 의미를 가집니다. 블로킹이란 코드 실행을 중간에 막는 것으로 코드 실행이 멈춘다는 뜻입니다. 파일을 읽는 데 5초가 걸린다면 5초 동안 프로그램을 멈추고 사용자는 필요한 정보를확인할 수 없는 상태가 되는 동기 함수를 사용한다고 가정하면 .. 04. 네트워크 기초 및 서버 만들기 04-1 HTTP 이해하기 웹 동작은 클라이언트에서 서버로 자료를 요청하고 서버에서 클라이언트로 요청한 자료를 보내는 방식으로 동작합니다. 인터넷이 등장하면서 같이 만들어진 클라이언트와 서버 간의 규칙을 HTTP 프로토콜이라고 합니다. 클라이언트에서 서버로 자료를 요청하는 것은 HTTP 요청, 서버에서 응답해 클라이언트로 자료를 보내는 것은 HTTP 응답이라고 합니다. 즉, 서버프로그래밍은 요청과 응답을 어떻게 처리할 것인지 결정하게 됩니다. 요청과 응답 클라이언트가 서버로 보내는 요청 메시지는 요청 헤더와 요청 본문으로 구성됩니다. 만약 '사이트 내용을 보여 줘'라고 요청했다면 요청 본문에는 사이트 주소가 들어 있고, 요청 헤더에는 사용하는 시스템 정보, 웹 브라우저 정보, 사용한 언어 등 다른 정보까.. 03. path, File System 모듈과 스트림 1. path 모듈 path 모듈에는 파일이나 디렉터리 경로를 다룰 수 있는 함수들이 포함되어 있습니다. 경로를 다루는 모듈이 필요한 이유는 운영체제 간에 경로를 구분하는 구분자가 다르기 때문입니다. 윈도우 운영체제는 파일 경로를 포기할 때 경로 구분자로 역슬래시(\)를 사용합니다. 반면에 유닉스 기반 운영체제인 맥 OS나 리눅스에서는 경로 구분자로 슬래시(/)를 사용합니다. 경로를 다루는 주요 함수 살펴보기 path 모듈 가져오기 : 애플리케이션을 제작할 때는 하위 폴더를 여러 개 만들고 그 안에 있는 파일을 가져오가나 하위 폴더에 파일을 저장합니다. path.함수() 경로를 지정하는 join함수: join 함수를 사용하면 여러 조각으로 나워서 입력한 경로를 연결해 하나로 만듭니다. dirname 함수.. 02.자바스크립트 기초 문법과 모듈 1. npm 패키지 노트에서 패키지를 사용할 때는 npm 공식 웹 사이트(https://www.npmjs.com/) npm 공삭 웹 사이트로 이동한 후 terminal을 검색하면 검색 결과 오른쪽에 가로 막대 3개가 있는데, 여기에서 p는 인기도, q는 품질, m은 유지보수를 뜻합니다. 패키지마다 클릭하면 어떻게 설치하는지, 그리고 어떤 식으로 사용하는지 확인할 수 있습니다. 터미널 창에서 npm i 를 사용하여 패키지를 설치할 수 있습니다. 패키지를 설치한 후에는 package.json 파일에 dependencies라는 항목이 생겨서 애플리케이션이 사용하는 패키지와 버전이 표시되어 있습니다. 패키지를 더 이상 사용하지 않는다면 삭제할 수도 있습니다. npm에서 패키지를 삭제하는 uninstall 명렬을.. [서평] Do it! Node.js 프로그래밍 입문 책 목차 및 구성은 백엔드 개발 다지기 ->웹 애플리케이션 서버 만들기->웹 애플리케이션 완성하기->실전 나만의 블로그 앱 만들기로 구성되었다. 이미 노드를 프로젝트에서 사용했지만, 책을 보고 찬찬히 단계를 밟으면서 학습한 것이 아니라 항상 개념과 이론이 빠져있는 아쉬움이 남았는데 책 첫째 마당인 백엔드 기초 다지기를 아쉬움을 채워넣을 수 있었다! 백엔드를 하다 보면 많이 궁금해하는 질문인 HTTP란 무엇인가와 노드의 특징이라고 불리는 비동기란 무엇인가에 대한 설명부터 찬찬히 해주는 기초 맞춤, 노드 입문자에게 또 백엔드 입문자에게 적합한 책이라는 생각을 했다.(노드를 했지만 인테넷을 찾아보면서 구현을 중점했던 저에게 유용했죠.) 책을 정리하면서 학습한 내용은 아래 참고해주세요~~ [Node.js] - .. VScode에서 알아두면 유용한 깃허브 vscode를 사용하다보면 파일 명 옆에 아래와 같은 표시들을 볼 수 있습니다. 이는 Git 상태를 보여주는 유사 아이콘입니다. vs code U: untracked, 깃허브에서 이전에 관리하지 않은 파일이라는 표시 vs code A : stage 등록, git add 이후의 상태 commit 이후 추적 중인 상태는 표시하지 않음 vs code M : modify, 깃허브가 추적중인 파일에 변경 사항이 생겼다. 누락된 스크립트 오류 express: https://expressjs.com/en/starter/hello-world.html Express "Hello World" example Hello world example Embedded below is essentially the simplest Express app you can create. It is a single file app — not what you’d get if you use the Express generator, which creates the scaffolding for a full app with numerous JavaScript files, Jade expressjs.com index.js express모듈 복붙(->가져온다) 오류1 npm ERR! .. 이전 1 다음