본문 바로가기

BackEnd

(9)
배치 작업 어디까지 해봤니? 블로그 옮겼어용~ 배치 작업 어디까지 해봤니? 배치(Batch) 작업 어디까지 해봤니? 서비스를 구축하다 보면 많은 양의 데이터를 일괄적으로 변경하거나 삭제 등의 처리를 해야 할 순간이 옵니다. 이런 작업을 트래픽이 몰리는 시간 때에 하게 j-ho.dev
자주 사용하는 LINUX 명령어 블로그 옮겼어용~ 서버 문제를 디버깅하기 위한 리눅스 명령어 문제의 원인을 조사하는 것은 어려운 작업입니다. 하지만 유용한 리눅스 명령어들을 알고 있다면 문제의 원인을 찾는데 도움 받을 수 있습니다. Disk 디스크 용량 체크 파일 시스템의 디스크 사 j-ho.dev
Docker란? 서버를 관리한다는 것 일반적으로 서버를 관리한다는 건 복잡하고 어려우며 고급 개발자들의 섬세한 작업이 필요한 영역입니다. 시간이 흐르면서 서버 환경이 계속 바뀌는데 CentOS에 익숙해지면 Ubuntu를 써야 하는 일이 생기고 AWS에 익숙해지면 Azure를 써야 하는 일이 생깁니다. Chef의 cookbook에 익숙해지면 Ansible의 playbook을 작성해야 하는 일이 생깁니다. DevOps의 등장으로 개발 주기가 짧아지면서 배포는 더 자주 이루어지고, 마이크로 서비스 아키텍처가 유행하면서 프로그램은 더 잘게 쪼개어져 관리는 더 복잡해져 갑니다. 새로운 툴은 계속해서 나오고 클라우드의 발전으로 설치해야 할 서버가 수 백, 수 천대에 이르는 1 나누기 0 같은 상황에서 도커가 등장하고 서버 관리 방..
MongoDB Replica Set MongoDB(ReplicaSet) MongoDB ReplicaSet? MongoDB의 레플리카 셋 구성 기능은 데이터베이스의 고가용성 환경을 위해 필요한 기술입니다. DB 노드의 장애가 발생하거나, DB에 문제가 발생하는 경우에도 빠르게 장애에 대응하 j-ho.dev
MongoDB - BulkWrite https://j-ho.dev/feature-3/ MongoDB(BulkWrite) BulkWrite란? BulkWrite는 MongoDB 데이터 쓰기 명령( , , )을 모아서 한 번에 실행할 수 있는 명령입니다. BulkWrite 명령은 다음과 같은 명령을 한 번에 모아서 실행할 수 있는데, 반드시 하나의 컬렉션에 j-ho.dev
Redis-Stat - 레디스 모니터링 레디스를 쓰다 보면 각 레디스 서버가 메모리를 얼마나 쓰고 있는지 모니터링할 필요가 있습니다. 그럴 때 간단하게 쓸 오픈 소스 라이브러리를 소개해드리겠습니다. redis-stat redis-stat으로 띄운 대시보드입니다. 인스턴스 별로 정보를 볼 수도 있습니다. 맘에 드신다면 아래 설치를 따라가 주세요. Install redis-stat은 ruby로 만들어져 있습니다. yum install ruby-devel gcc make rpm-build rubygems ruby를 사용할 때 필요한 라이브러리들을 설치합니다. gem install redis-stat gem을 이용해 redis-stat을 설치합니다. USAGE redis-stat 주소:포트번호 주소:포트번호 주소:포트번호 --verbose --dae..
NestJs 예외 처리 ( Error Handling, Error Exception ) NestJS 예외 처리 (Error Exception) NestJs에는 애플리케이션 전체의 모든 예외 처리를 하는 Exceptions Layer가 내장되어 있습니다. 애플리케이션 코드에서 예외 처리를 하지 않으면 이 레이어에서 예외를 처리합니다. 커스텀으로 예외 j-ho.dev
MongoDB - $addToSet $addToSet mongoDB의 $addToSet 연산자는 타입이 배열인 필드에 값을 추가할 수 있는 연산자입니다. 배열 안에 중복인 값이 있다면 추가되지 않습니다. { $addToSet: { : , ... } } Missing Field 값을 추가하려는 필드가 없다면 필드를 생성하고 그 안에 배열 타입인 값을 추가합니다. 단! 배열의 순서를 보장하진 않습니다. Field is Not an Array 필드는 반드시 배열 타입이어야 합니다 만약 아래와 같은 document가 있을 때 { _id: 1, colors: "blue,green,red" } $addToSet으로 update를 해도 colors의 타입은 string이기 때문에 연산이 실패합니다. db.update( { _id: 1 }, { $add..