목록전체 글 (73)
과거의 내가 미래의 나에게
플랫폼에 추가 요구사항이나 에러이슈가 들어오면 우리팀이 가장 먼저 이를 보고 어떻게 처리할 지 판단하여 각 팀에 뿌려준다. 이번 이슈는 사용자의 사용기록을 단순히 테이블로 쌓는 페이지에서, 1년이 지난 기록은 없어지게 해달라는 클라이언트에 요청이 있었다. 이 페이지는 DB에서 쌓인 데이터를 끌고만 오는 페이지라 DB에서 일정기간 지나면 데이터가 삭제되게끔 하는 처리만 하면 될 것 같아 백엔드팀에게 문의해보니 TTL을 설정만 하면 된다는 답변을 들었다.따라서, 오늘은 처리했던 TTL 설정법을 단순하게 기록용도로 적을 것이다! TTL이란?Time to Live의 약자로 데이터가 살아있는 시간을 뜻한다. MongoDB는 TTL이 자체적으로 포함되어있어서 설정이 쉬운 편인데, 이는 noSQL DB들의 특징인 듯..
사건의 발단은 nginx.conf의 지시문들을 하나하나 뜯어보며 공부하다가 access.log를 직접 보고 싶은 열망으로 인해 시작되었다. 하지만 내가 임시로 설치한 wsl의 우분투 안의 nginx는 아직 conf 파일만 들락날락하느라 서버의 요청을 받은 적이 없고 따라서 로그는 없을 것이었다.그래서 vpn을 통해 회사 서버에 접속하여 access.log를 까보려하는데 왠걸 너무 느린 것이다. access.log의 파일 크기가 너무 큰가 싶어서 파일 크기를 알 수 있는 명령어( ls -lh access.log)로 크기를 확인한 후 너무 크다면 로그 롤링이라는 것을 해봐야겠다! 했지만 출력된 것은 아래와 같았다.Irwxrwxrwx 1 root root 11 Nov 12 02:03 access.log —> ..
오늘은 nginx의 기본 설정을 할 수 있는 nginx.conf 파일에 대해서 뜯어보자. nginx.conf 란?nginx.conf 파일은 nginx의 주요 설정 파일로 전반적인 동작 방식을 제어한다. nginx를 설치하고 아무것도 건들지 않는 것을 기반으로 하면 보통 nginx.conf 파일은 "/etc/nginx/nginx.conf nginx" 이 경로에 위치한다. 구성은 블록 지시문과 단순 지시문으로 이루어져있는데, 단순 지시문은 공백으로 구분된 이름과 매개변수로 구성되어있고 세미콜론으로 끝난다. 블록 지시문은 세미콜론 대신 중관로로 둘러쌓인 추가 지시문 모듬으로 끝난다. 이렇게 중괄호 안에 다른 지시문들을 가질 수 있는 블록 지시문을 context라고도 한다. context에 둘러쌓이지 않은..
6월에 웹 서버에 대한 정의와 Nginx가 무엇인지 살펴보고 멈췄었는데...오늘은 그것에 이어서 Nginx를 직접 설치해보고 기본 구성정도만 알아보려한다.웹 서버는 일반적으로 백엔드 직군이나 데브옵스를 다루는 개발자가 많이들 하지만... 웹 서버는 결국 브라우저와 서버를 이어주는 통로와도 같기에 프론트 개발자도 웹 서버 관련해서 알아둬야 할 부분이라 생각했다. 꾸준히 공부해서 회사에서 nginx를 설계하는 역할을 가져가봐야지! Nginx 설치하기1. 패키지 업데이트sudo apt updatesudo apt upgrade설치하려보니 다들 Nginx 설치 전에 위와 같은 코드를 꼭 쓰던데, 우분투와 같은 데비안 계열 리눅스 배포판에서는 무언가를 설치하기 전에 패키지(운영체제 전체에서 필요로 하는 모든 ..
Blob 객체를 사용하는 경우가 꽤 되는데 대충 큰 데이터를 다룰 때 쓴다! 정도는 알지만 명확하게 파악하진 못하고 있어서 이번 기회에 학습해본다. Blob이란?Blob은 Binary Large Object의 약자로, 문자 그대도 커다란 바이너리 객체라는 의미이다. blob이라는 영어 단어는 덩어리라는 뜻을 가지고 있기도 해서 텍스트나 정수같이 특정 포맷을 가진 데이터 유형과 달리 덩어리 자체를 저장한다라는 느낌으로도 볼 수 있을 것 같다.과거에는 정수나 텍스트같이 특성이 뚜렷한 데이터만 저장하면 되었지만 이미지, 비디오 등 텍스트로만 처리할 수 없는 크고 다양한 데이터들이 등장하기 시작하였고 이를 처리하기 위해서 Blob 타입이 도입되었다.Blob은 이러한 대용량의 이진 데이터를 웹브라우저나 JS에서 ..