22.01.20

lustellz·2022년 1월 20일
0

오늘의 고민

목록 보기
1/8
post-thumbnail

이건 tedious 라이브러리의 문제일까 mssql 드라이버의 문제일까 nodejs의 특성 문제일까.
어제 라이브러리 공식 문서를 통해 코드를 직접 본 결과 이렇게 쓰면 되겠지! 하며 코드를 수정했는데 결국 페이지에 값을 렌더링 시키는 데엔 실패했다. 보통 이렇게 안 쓰나보다 하는 생각도 좀 들긴 하는데 그럼 이제 어떻게 하면 될까로 넘어가지 않는 상태...
추측하는 바로는 js 특성상 변수에 값을 할당하는 것이 참조를 복사하는 것에 지나지 않기 때문에 드라이버에 쿼리 request를 끝내고 나면 사라진 값을 못 가져오는 듯하다. 이거저거 다 시도하다가 결국 어제와 같은 자리로 돌아왔다. console에 출력되는 값을 화면으로 가져오지 못하는 중인.
이렇게 하면 쿼리문을 여러 개 실행하기 위해서 프로시저를 사용해야만 할 듯도 하다. 내일 스터디 준비도 해야하지만 좀 더 명확한 예시도 찾아봐야겠다.

그리고 아주 정확한 공식 문서를 찾았으며 내가 눈을 뜨고 다니기는 하는 건지 의심스러울 정도의 명답을 발견했다.

As one Node JS process is able to handle multiple requests at once, we can take advantage of this long running process to create a pool of database connections for reuse; this saves overhead of connecting to the database for each request (as would be the case in something like PHP, where one process handles one request).

Global Pool Single Instance

결국 이번에도 문제는 커넥션 풀 생성 관련으로 발생한 듯하다. 아주 옛날에 자바 프로젝트 처음 시도해서 db 연결했을 때 겪었던 문제였을 텐데.
제발 내일은 CRUD 끝내고 싶다.

https://github.com/tediousjs/node-mssql#global-pool-single-instance

0개의 댓글