세계정복의주인장 (1191) 썸네일형 리스트형 3-2 node.js 기본 모듈 리스트 node.js 설치시 기본으로 제공되는 모듈리스트 입니다.모듈 이름 클릭시 새창으로 API 도큐먼트가 열립니다. assert 단정문 모듈 Buffers 바이너리 데이터의 옥텟 스트림(8비트 데이터) 모듈 Child Processes 자식 프로세스 생성및 관리 모듈 Cluster 멀티코어처리 모듈 Console 콘솔 모듈 Crypto 암호화 모듈 DNS 도메인 네임 서버 모듈 Domain(폐지 예정) Events 이벤트 관련 모듈 File System 파일시스템(읽고/쓰고) 모듈 Globals 글로벌 객체 모듈 HTTP HTTP 서버와 클라이언트 기능 모듈 HTTPS HTTPS 서버와 클라이언트 기능 모듈 Net 비동기 네트워크 통신 기능 모듈 OS 운영체제 정보를 제공 모듈 Path 파일의 .. 3-1 node.js 전역 객체 node.js에서 제공하는 객체들로 선언 없이 어디서 든지 사용할수 있는 객체들입니다. 1. global 전역객체 지정하기 global.someting = 1;console.log("someting : " + someting);전역객체 선언 입니다. global.객체이름 을 사용하여 node 실행시 어디서든지 접근 가능합니다. 2. console 객체 console.log("print");console.time('100-elements');for (var i = 0; i Node.js 콘솔 관련된 기능을 다루는 객체 입니다.log() - 출력을 한다.time(label) - 시간 측정을 시작.timeEnd(label) - 시간 측정을 종료 후 출력. 3. process 객체// process... 2-2 간단한 서버 실행시키기 http://nodejs.org 에 나와 있는 간단한 서버 소스 입니다. const { createServer } = require('node:http');const hostname = '127.0.0.1';const port = 3000;const server = createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello World');});server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`);}); webserver.js 파일을 생성후.. 2-1 hello node.js! console 출력 1. js 파일을 만듭니다. 이름은 Hello_node.js 로 했습니다. 2. 만든 js파일을 더블 클릭하여 편집 모드에서 아래의 코드를 넣어줍니다. console.log("Hello node.js!"); 3-1. node.js 의 실행 방법은 터미널에서 node 실행파일명 입니다.실행시 문자열이 찍힌걸 확인할수 있습니다.$ node Hello_node.js 3-2. webstorm 사용시 다음과 같습니다. 우측 상단의 RUN 버튼을 눌러주시면 됩니다. 1-3 node.js의 단점! 좋은점이 있다면 단점이 있는법! 1. 싱글 스레드 모델의 한계Node.js는 싱글 스레드, 이벤트 기반 모델을 사용합니다. 비동기 처리를 통해 고성능을 발휘하지만, CPU 집약적인 작업(예: 복잡한 계산이나 대규모 데이터 처리)에 적합하지 않습니다.하나의 스레드에서 모든 작업이 처리되므로, 오래 걸리는 작업은 이벤트 루프를 막아 다른 요청 처리에 지장을 줄 수 있습니다.2. 비성숙한 라이브러리Node.js의 npm 에코시스템에는 수많은 패키지가 있지만, 일부는 잘 관리되지 않거나 품질이 낮을 수 있습니다.유지보수가 중단된 라이브러리를 사용하는 경우 보안 및 안정성 문제로 이어질 수 있습니다. (서비스가 멈출수도 있습니다!!)3. 콜백 지옥초기 Node.js 코드에서는 콜백 패턴을 많이 사용하므로 코드가 .. 1-2 node.js의 특징. event-driven, non-blocking I/O , 단일 스레드 node.js의 특징인 event-driven, non-blocking I/O , 단일 스레드 에 대한 간략한 설명입니다. 1. event-drivenevent-driven은 사용자가 이벤트를 발생시켰을때, 즉 데이터를 전송 했을때에만 작동합니다. 대부분의 웹서버는 사용자가 이벤트를 발생하기까지 기다립니다. 이벤트가 발생하기까지 자원(대기 시간 및 메모리)을 계속 소비하게 됩니다. 하지만 event-driven는 이벤트에만 웹서버가 연결해주기 때문에 자원을 최소화 시킬수 있습니다. 2. non-blocking I/Oblocking I/O(동기식 I/O) 은 쓰기/읽기 이벤트가 발생하면 이벤트가 끝날때까지 해당 모듈을 점유하게 됩니다. 즉 다른 일을 못하게 되지요. 또한 메모리버퍼에 데이터를 차지하.. timesacle db + fastapi https://www.youtube.com/watch?v=Se5ipte9DMY&t=3s timesacleDBtimesacle DB 는 PostgreSQL 을 기반의 TimescaleDB는 오픈소스 기반의 시계열(time-series) 데이터베이스로 시계열 데이터를 효율적으로 저장, 관리, 분석할 수 있는 기능을 제공하며, PostgreSQL의 모든 기능을 그대로 사용할 수 있는 확장(extension) 형태로 동작한다. 주요 특징PostgreSQL의 확장이므로, PostgreSQL의 모든 기능과 호환 (SQL 쿼리, 트랜잭션, 인덱스, 사용자 정의 함수 등을 그대로 활용)시간 축을 기준으로 데이터를 효율적으로 분할 및 저장 (데이터의 쓰기/읽기 성능을 최적화하기 위해 자동 파티셔닝과 압축을 제공)Hyp.. 2. elasticsearch indexing Indexing 이란 문서(DOC)들의 내용 중에서 검색하고자 하는 대상들을 쉽고 빠르게 찾을 수 있는 자료구조로 배치하는 것.전통적인 RDBMS 에서는 like 검색을 사용하기 때문에 데이터가 늘어날수록 검색해야 할 대상이 늘어나 시간도 오래 걸리고, row 안의 내용을 모두 읽어야 하기 때문에 기본적으로 속도가 느림.Elasticsearch는 데이터를 저장할 때 역색인(inverted index) 구조를 만들어 저장하여 관리 Elasticsearch에서는 추출된 각 키워드를 텀(term) 이라고 부르며 이렇게 Inverted Index가 있으면 term을 포함하고 있는 Documents의id를 바로 얻어올 수 있다.이러한 특성 떄문에 Elasticsearch에서는 저장이 아닌 색인(Indexing).. 이전 1 2 3 4 5 6 7 ··· 149 다음