본문 바로가기
반응형

전체글582

Mac에 PostgreSQL없이 PSQL만 설치하기 일반적인 GUI 클라이언트에서는 PostgreSQL의 psql을 지원하지 않습니다. 그러다보니 psql 명령어를 입력이 필요하면 별도 설치가 필요합니다. 물론 PC에 PostgreSQL 을 설치하셨으면 psql 이 설치되어있겠지만, Cloud, Docker 가 대중화된 시점에서 직접 PC에 PostgreSQL을 설치하는 경우는 거의 없는것 같습니다. 1. 설치 먼저 기존에 설치된 psql이 있는지 확인해봅니다. psql --version 해당 명령어 실행시 설치가 안된 것이 확인이 되면 Homebrew를 통해 libpq을 설치합니다. brew install libpq 해당 패키지 설치시 psql, pg_dump 및 기타 클라이언트 유틸리티 전체를 사용할 수 있습니다. 다만, PostgreSQL 패키지에 .. 2021. 5. 21.
Pinpoint APM Node 버전 설치하기 자바 진영에서 유명한 분산 환경 APM (Application Performance Monitoring) 도구를 고르라고 하면 네이버에서 만든 Pinpoint를 쉽게 떠올리곤 하는데요. 특히나 요즘 같이 분산환경에서 애플리케이션 모니터링에 최적화된 기능들이 많아 백엔드 구성하는데 있어 큰 도움을 받는데요. 아쉽게도 그동안 공식적으로 Java / PHP / 파이썬 / C 만 지원을 하던 중에, 드디어 Node를 지원하기 시작했습니다. 물론 자바처럼 100%를 지원하진 않지만, 그럼에도 충분한 장점이 있는 Pinpoint Node Agent를 이번 시간에는 설치해보겠습니다. 이 모든 과정은 기존에 Pinpoint 구성이 없다고 가정해서 진행합니다. 이미 Pinpoint를 구성해서 사용하는 중이시라면, 3번으.. 2021. 5. 17.
CloudWatch를 이용한 RDS (PostgreSQL) 스케줄링 시작/종료 운영되는 환경 (live, production, real 등) 외에, 테스트 용도로 사용되는 환경(dev, qa)은 꼭 24시간 무중단으로 서비스를 할 필요가 없습니다. 그래서 실제 업무시간을 제외하고는 해당 서비스를 종료하여 비용을 절감할 필요가 있습니다. (굳이 사용하지 않는 시간대에 비용을 낭비할 필요는 없겠죠?) 그래서 이번 시간의 목표는 다음과 같습니다. CloudWatch Event를 이용하여 매주 월~금 오전 09:00 에 RDS가 재시작 되도록 스케줄링 한다 매주 월~금 오후 08:00 에 RDS가 정지 되도록 스케줄링 한다. 금요일 오후 8시에 종료되고 월요일 오전 9시에 시작이기 때문에 주말 동안은 계속 종료 상태를 유지합니다. 전체 구조는 다음과 같습니다. 자 그럼 바로 시작해보겠습니.. 2021. 5. 11.
M1 맥북 개발 환경 세팅 애플의 M1 맥북이 나오면서 많은 개발자분들이 굉장한 성능 차이를 체감하게 되시는데요. 저 역시도 최근에 맥미니를 구매해서 사용중인데, 비슷한 가격대의 맥북 프로에 비해서 훨씬 더 쾌적하게 개발을 하고 있습니다. 다만 기존 맥북의 설치앱들을 그대로 마이그레이션 하다보니 Intel 버전의 앱들도 그대로 설치되어 M1 성능을 체감못하는 경우도 있습니다. 그래서 M1에 맞게 기존 앱들을 교체가 필요합니다. 이번 시간에는 M1 을 위한 개발환경 설정을 진행해보겠습니다. 저같은 경우 회사 업무에서는 Intel 맥북 (2019 맥북 프로) 를 사용하지만, 집에서는 M1 맥미니를 사용중입니다. 아직까지 VPN, 보안 프로그램, 패키지등 개발에 필요한 여러 환경에서 100% M1 맥북을 지원한다는 보장이 없기 때문인데.. 2021. 5. 9.
PostgreSQL RDS Slow 쿼리 Slack으로 알람 보내기 서비스를 운영하다보면 여러가지 이유로 서버 장애가 발생합니다. 그 중 가장 빈도수가 높은 원인은 DB의 슬로우쿼리일텐데요. 어떤 쿼리가 언제, 얼마나 긴시간동안 수행되었는지에 대해 알람을 받거나 모니터링이 되어야 서비스에 이슈가 될만한 쿼리들을 지속적으로 탐지하고 개선이 가능하기 때문입니다. 이번 시간에는 AWS RDS PostgreSQL에서 슬로우 쿼리에 대한 로그를 남기고 이에 대해 슬랙 알람을 보내도록 설정하는 방법을 진행하겠습니다. 이번 시간에는 PostgreSQL로 진행하지만 MySQL도 DB 파라미터 설정등에 차이가 있지만, 전체 Flow는 거의 흡사하니 참고해서 진행 가능하실것 같습니다. 전체적인 구조는 다음과 같습니다. 한번 이렇게 구성하고 나면 이후에 CloudWatch에 적재된 슬로우 .. 2021. 5. 8.
nodeenv를 활용한 프로젝트별 node 가상 환경 관리 Node에는 nvm 이나 n을 통해 동적으로 로컬 PC의 Node 버전을 변경할 수 있는데요. 다만 애초에 여러 프로젝트를 서로 다른 버전으로 동시에 사용하는 경우에는 매번 버전을 변경하는 것도 상당히 귀찮은 일입니다. 이를테면 다음과 같은 경우입니다. 회사의 프로젝트는 node 12를 쓴다 개인 프로젝트는 최신 버전인 node 16을 쓰고 싶다. 주말마다하는 사이드 프로젝트는 14를 쓰기로 했다. 이렇게 될 경우 매번 PC의 node 버전을 변경해야하는데요. 출근 전에는 node 16으로 출근 하면 node 12로 행여나 회사내 node 프로젝트들도 버전이 서로 다르면 이때도 계속 프로젝트 실행때마다 nvm 이나 n으로 버전을 변경해야합니다. 퇴근 하면 다시 node 16으로 주말 에는 node 14로.. 2021. 5. 2.

728x90
반응형