Node.js addon Handle
출처1 : https://z-wony.tistory.com/18 출처2 : https://kariera.future-processing.pl/blog/a-curious-case-of-memory-leak-in-a-node-js-app/ Node.js addon Handle v8 의 Handle (memory) 관리 방법 v8 GC 에서 관리하는 ...
출처1 : https://z-wony.tistory.com/18 출처2 : https://kariera.future-processing.pl/blog/a-curious-case-of-memory-leak-in-a-node-js-app/ Node.js addon Handle v8 의 Handle (memory) 관리 방법 v8 GC 에서 관리하는 ...
Node.js 에서 addon 을 개발하는 방법 1. napi 기존 v8, libuv, nan 을 사용해 개발한 addon 모듈은 API/ABI 안정성이 보장되지 못하고 Node.js 주요 릴리즈마다 재컴파일 해야한다. napi 는 v8 같은 js 런타임에 독립적이고 API/ABI 안정성이 보장된다. 그리고 Node.js 버전마다 재컴파일 하지 않아...
Node.js 에서 unixODBC pool 을 사용할 때 pool size 만큼 RDBMS 에서 활용하지 않는 이유 1. 환경구성 unixODBC 에서 Pool 을 설정하고, node.js 에서 odbc module 로 pool 을 사용하는 커넥터를 개발해 RDBMS 에 연결한다. pool size 는 100 개로 설정했다. 커넥터에 bull q...
Nodejs 에서 worker thread 사용법 Nodejs 와 싱글스레드 싱글스레드 Nodejs 의 자바스크립트 부분은 단일 스레드로 실행되고 I/O는 가상 머신과 운영체제가 병렬로 실행한다. Node.js 가 시작되면 하나의 프로세스, 하나의 스레드, 하나의 이벤트 루프, 하나의 js 엔진 인스턴스, 하나의 노드js 인스턴스가 실행된다....
출처 : blog.neonkid.xyz/179 리눅스에서 ODBC 사용하기 1. ODBC 란 Open DataBase Connectivity 의 약자로 Microsoft 에서 개발한 데이터베이스를 연결하기 위한 공개형 응용 프로그램 인터페이스 이다. ODBC 를 활용하면, 데이터베이스와 연결하기 위해 Socket 을 사용해 커넥션을 생성하고 서버와...
unixODBC 로 oracle 서버에 연결하기 1. oracle instant client 설치 오라클 홈페이지 에서 oracle-instantclient-basic-21.1.0.0.0.-1.x86_64.rpm oracle-instantclient-sqlplus-21.1.0.0.0-1.x86_64.rpm 을 받아서 설치한다. oracl...
async/await 는 Non-blocking 일까? Promise, async/await, blocking/non-blocking, async/sync Promise : Promise 는 비동기 상황을 일급 값으로 다룰 수 있도록 한다. 일급 값이 되면 변수에 할당할 수 있고 함수의 인자나 리턴 값으로 사용할 수 있다. async/aw...
출처 : https://preamtree.tistory.com/168 비동기 상황에서 예외와 스택 트레이스 비동기 함수에서 예외 발생 시 스택 트레이스가 출력되지 않는다. 스택 트레이스가 없어지는 상황 async function funcOne() { throw new Error('Error here prints the complete stack...
V8 엔진의 heap 메모리 구조와 메모리 사용량이 계속 증가하는 이유 1. V8 엔진의 heap 메모리 구조 V8 엔진의 heap 메모리 구조는 아래와 같다. New Space(Young generation) : 새로운 객체나 짧은 시간 유효한 객체들이 저장되는 메모리 공간이다. 상대적으로 작은 크기의 메모리 공간이며, 두 개의 Semi...
자바스크립트 메모리 관리, 누수 대처법 1. 개관 코드를 컴파일하면 컴파일러는 원시 데이터 타입을 검사해 필요한 메모리를 검사한다. 그리고 필요한 만큼 스택 스페이스에 코드와 변수를 할당한다. 변수는 사용되고 후입선출로 삭제된다. 함수는 자신만의 스택 꾸러미를 갖게되고, 모든 지역 변수와 함수의 실행이 어디까지 진행되었는지 기억하는 프로그램 카운터...