본문 바로가기

분류 전체보기75

Threads and Process 커널은 커널 단위로 CPU 스케줄링을 처리한다. 프로세스를 하는 것에 비해서 성능이 좋아진다. 그러나 쓰레드는 sys.call로 구현되야 하기 때문에 OS가 필연적으로 개입되게 된다. 그래서 유저 레벨 쓰레드를 사용하기로 결정유저 레벨 쓰레드는 PC, 레지스터, 스택, 그리고 작은 쓰레드 블럭으로 만들어서 가볍고 빠르다. 절차적 호출을 향해 쓰레드의 생성, 전환, 씽크를 맞춘다. 커널이 관여하지 않기 때문에 속도가 빠르다.유저 레벨 쓰레드의 단점OS한테 맡기기 때문에 OS가 잘못된 결정을 할 수가 있다.쓰레드가 I/O를 초기화 할 때 프로세스가 막을 수 있다. 심지어 쓰레드가 실행중일 때도 마찬가지이다.POSIX(Portable Operating System Interface for UNIX)쓰레드의 부.. 2024. 3. 25.
Oauth, naverStrategy 에러 OAuth 에러메세지Users/SaintKim/Documents/graduate/node_shop/node_modules/passport-oauth2/lib/strategy.js:83 if (!options.clientID) { throw new TypeError('OAuth2Strategy requires a clientID option'); } ^TypeError: OAuth2Strategy requires a clientID option at Strategy.OAuth2Strategy (/Users/SaintKim/Documents/graduate/node_shop/node_modules/passport-oauth2/lib/strategy.js:.. 2024. 3. 23.
Router.use() 에러 throw new TypeError('Router.use() requires a middleware function but got a ' + gettype(fn)) ^TypeError: Router.use() requires a middleware function but got a Object at Function.use (/Users/SaintKim/Documents/Node/Node_SNS/node_modules/express/lib/router/index.js:469:13) at Function. (/Users/SaintKim/Documents/Node/Node_SNS/node_modules/express/lib/application.js:227:21) at Array.fo.. 2024. 3. 21.
auth/join 에러 & logout 에러 localStrategy.jsPOST /auth/join 라우터가 없습니다.400Error: POST /auth/join 라우터가 없습니다. at app.use.res.locals.message (/Users/SaintKim/Documents/Node/Node_SNS/app.js:49:17) at Layer.handle [as handle_request] (/Users/SaintKim/Documents/Node/Node_SNS/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/SaintKim/Documents/Node/Node_SNS/node_modules/express/lib/router/index.js:328:.. 2024. 3. 20.