nestjs 에서 class 를 인스턴스화 시켜서 언제 어디서 사용해도 동일한 값을 이용하기 위해 constructor() 안에 사용하고 싶은 객체를 주입해서 주로 사용한다. 여러 예시가 있지만, 이 글에서는 db 에 접근하는 layer 인 repository 에서 어
kibana 는 간단하게 설명하면 elasticsearch 에 저장된 데이터들을 시각화해서 직접 쿼리도 짤 수 있게 해주고, 대시보드도 구성할 수 있게 해주는 시각화 툴이다.
이전 글에 이어서... 긁어온 로그 데이터를 어떻게 가공하는지에 대해서 알아보자. logstash > 무료 개방형 서버의 데이터 처리 파이프라인인 Logstash는 다양한 소스에서 데이터를 수집하여 변환한 후 자주 사용하는 저장소로 전달합니다. logstash 공식
디비 설계를 할때, 무결성을 지켜야 함 데이터의 정확성, 일관성, 유효성을 유지하는 성질개체 무결성 (PK의 성질입니다)기본키는 null을 가질 수 없다. 기본키는 유일한 값이어야 한다. 참조 무결성 (FK의 성질입니다)외래키는 null 이거나 참조테이블의 기본키여야
서비스의 전체적인 상황들을 한눈에 파악하고 문제가 발생한 경우, 즉각적으로 트래킹 및 처리할 수 있도록 하는 것을 모니터링 한다 라고 한다. 모니터링 툴에는 여러가지가 있다. sentrydatadoggrafanaetc...이번에는 grafana 에 대해서 얘기를 해보려
3.0 이상의 typeorm 을 가지고 트랜잭션 관리를 해보자. 레퍼런스가 너무 많아서 그냥 기록용으로 작성하려고 한다.
저번에는 실제 디비를 연결하지 않고, 고정 값으로 dataloader 를 구현해봤다면, 이번에는 실제로 디비에 연결해서 dataloader 가 어떻게 돌아가는지 확인해보자.
현재 서비스에서 결제 서비스와 대출 서비스를 운영하고 있다. 결제 서비스, 대출 서비스 모두 결제 및 대출이 일어나면 해당 액션에 대한 트리거로 웹훅을 전송해주는 모듈이다. 해당 웹훅을 우리 서비스(api server)가 점검중이거나 혹은 예기치 못한 상황에 전송을 할
소소한 내용이다. 회사에서 cron-job 혹은 복잡한 로직들을 소스코드가 아닌 postgresql procedure, function 으로 관리를 하였다. 개발환경마다 디비를 다르게 해서 관리를 해서 배포를 하는 방법으로 진행했지만, 소스코드는 github로 버전관리
singleton(싱글톤) : 객체의 인스턴스가 오직 1개만 생성되는 패턴nestjs 에서는 docs 에서 알 수 있듯이, singleton 을 지향하고 있다. 싱글톤을 구현하기 위해서는 모듈화를 해서 주입해주는 방법이 있다.
입사했을 당시, 회사 백엔드 코드의 스택은 nestjs + graphql 이었다. 그 당시 graphql 에 대해서 잘 알지 못했고, 코드 구조를 보고 graphql 은 원래 이렇게 사용하는구나 싶었다. 새로 오신 시니어 개발자 분이 현재 코드 구조가 graphql 의
작년 겨울에 처음으로 결제 모델을 붙였다. 결제 라는 기능을 처음 만들다 보니, 편협한 사고와 시야로 결제 테이블 스키마를 설계 했었다. 그때 당시 나이스페이라는 pg 사를 사용했기 때문에, 사실상 나이스페이에만 국한되는 테이블을 설계했었다. 이번에는 기존에 존재하는
hmac : hash-based message authentication code암호화 해시 함수와 암호화 키를 동반한 메세지 인증 방법이다.