전체글622 PostgreSQL에서 Order By가 선적용되는 슬로우 쿼리 해결책 PostgreSQL 10.x 를 사용하다보면 간혹 옵티마이저가 잘못된 판단을 할때가 있습니다. 이번 경우에는 Order By 가 선 적용되는 실행계획을 어떻게 개선할지 알아보겠습니다. 1. 문제 상황 이를 테면 아래 쿼리의 경우 보통 1~5초 정도 수행됩니다. SELECT "vouchers"."id" FROM "vouchers" AS "vouchers" WHERE "course_id" in (select "id" from "courses" WHERE ("slug" = '코딩테스트-자바-실전' AND "deleted_at" IS NULL)) AND "user_id" in (select "id" from "users" WHERE ("deleted_at" IS NULL)) AND "deleted_at" IS .. 2021. 8. 21. IntelliJ & WebStorm에서 ES6(& TS) Import 문에 space 포함시키기 IntelliJ나 WebStorm의 기본 import 구문은 space가 없는 형태인데요. NestJS를 비롯해서 사내 프로젝트등의 Lint 규칙이 space가 포함된 형태라면 import 템플릿을 변경할 필요가 있습니다. import 템플릿 변경 IntelliJ나 WebStorm에서 아래를 따라 체크박스를 해줍니다. Preferences -> Editor -> Code Style -> JavaScript TypeScript -> Spaces -> Within -> ES6 import/export braces 그럼 아래와 같이 import시에도 자동으로 space가 포함된 형태가 됩니다. 2021. 8. 17. 1. NestJS & TypeORM 환경에서 Monorepo 구성하기 - 기본 환경 구성 및 명령어 지난 시간에 yarn workspace 를 활용한 Monorepo를 소개 드렸는데요. 이번 시간에는 NodeJS의 대표적인 MVC/DI 프레임워크인 NestJS 를 활용한 모노레포 구성을 진행해보겠습니다. 가끔 NestJS를 Spring 프레임워크와 비교하는데요. NestJS는 Spring 중에서도 Spring MVC와 같은 역할을 하는 것이지 Batch / Cloud / Security / Data 등을 모두 지원하는 엔터프라이즈 프레임워크인 Spring 프레임워크 전체와 비교하기엔 어렵습니다. 누가 더 뛰어난 프레임워크를 이야기하는건 아니지만, 100% 대칭된다고 보기는 어려워서 오해하시는 분들이 계셔서 먼저 말씀드립니다. 이번 편에서는 TypeORM 등의 다른 프레임워크까지의 통합은 배제하고, Ne.. 2021. 8. 16. (Windows) 프린터 없을 때 PDF로 인쇄 대체하기 부동산 등기를 비롯해서 공공 사이트를 통해 서류를 뽑을때 프린터가 없는 경우 제대로 뽑을 수가 없는데요. 이럴때 알 PDF를 이용하면 인쇄를 PDF로 대체할 수가 있습니다. 최근 이사를 하는 지인이 이걸 몰라해서 작성하게 되었습니다. 진행하시기전에 알 PDF가 설치되어있어야 합니다. 알 PDF 알 PDF 가 설치되어 있으면, 바로 등기부등본을 통해 진행해보겠습니다. 방법 등기부 등본 열람 화면에서 열람을 선택하면 아래와 같이 출력 버튼이 있는데요. 여기서 프린터 선택 화면에서 ALPDF를 선택합니다. 그리고 출력 혹은 확인 버튼을 클릭해 인쇄를 하게 되면, 아래와 같이 알 PDF로 문서가 열람 됩니다. 이를 PC에 저장하면 PDF로 저장 완료 됩니다. 2021. 8. 15. 객체지향 (Object Oriented) 디자인 (Design) 여기서 이야기하는 디자인은 코드 설계와 동일하게 봐도 무방하다. 디자인이 왜 중요한가? 요즘의 웹 애플리케이션 개발에서는 디자인에 대한 지식이 없더라도, 원하는 바대로 작동하는 웹 애플리케이션을 만들 수 있다. 특히나 최근의 언어들은 문법이 너무나 친절하여 자신의 생각을 순차적으로 정리만 할 수 있다면 누구나 원하는 웹 애플리케이션을 만들 수 있다. 작은 규모의 웹 애플리케이션에서는 이렇게 디자인을 전혀 고려하지 않고, 기능 구현에만 신경써도 문제는 없다. 아니, 아예 좋지 못한 디자인이라해도 문제가 되지 않는다. 객체간의 복잡한 관계, 계층화 되지 않은 구조 등 모듈화가 전혀 없어도 개발자의 머릿속에 모든 것들을 담아두고 개발을 할 수 있기 때문이다. 반대로 얘기하면 특정 누군가만 손댈수 있고, 그 사.. 2021. 8. 13. (AWS Aurora) PostgreSQL에서 Lock 쿼리 확인하고 원인 종료하기 RDBMS를 사용하다보면 Lock 쿼리를 종종 만나게 되는데요. (AWS Aurora) PostgreSQL에서는 어떻게 Lock 쿼리를 모니터링하고, 처리하는지 알아보겠습니다. 기존의 온프레미스 환경에 익숙하시다면 그 방식을 그대로 선택하시면 되고, 여기서는 AWS Aurora 환경을 기반으로 진행합니다. 1. 성능 개선 도우미 설정 AWS RDS를 사용하면 성능 개선 도우미를 통한 모니터링을 지원 받을 수 있는데요. 아래와 같이 처음 RDS 생성시 혹은 수정을 통해 설정이 가능합니다. 이렇게 성능 개선 도우미를 활성화시키면 성능과 관련된 여러가지 지표들을 손쉽게 모니터링할 수 있습니다. (이번에 이야기할 Lock 쿼리 역시 성능 개선 도우미를 통해 확인이 가능하기 때문에, 이를 기반으로 설명할 예정입니.. 2021. 8. 13. 이전 1 ··· 29 30 31 32 33 34 35 ··· 104 다음