전체 글
-
[서버] http 502 서버 메모리 부족TIL 2024. 4. 30. 11:25
관제서버 운영중에,배치프로그램으로부터 각 pc의 상태를 report하는 request를간헐적으로 서버에서 수신하지 못해 경고 알람이 울리는 현상이 지속적으로 발생했었다. 배치프로그램은 curl로 api를 호출했었는데, 배치프로그램에서 response 받은 에러 내용을 살펴보니 nginx에서 502 error를 반환하고 있었다.(서버와 연결 실패) nginx의 로그를 살펴본 결과,어느 순간부터 104에러 (업스트림 서버로부터의 일방적 연결해제) 가 발생하고그 이후부터 약 10~20초간 111에러 (업스트림 서버로 연결 실패)가 발생하고 정상복귀 되었다.이때 서버가 어떤 원인에 의해 종료된 후 재시작되어서 10~20초간 수신을 못하는 건가? 싶었지만, 서버가 재시작되면 크론 스케쥴이 서버 시작 시점부터 80..
-
[https] nginx로 간단하게 https 설정TIL 2024. 4. 16. 17:49
https 설정 방법이 블로그글마다 너무 다양해서 골치아팠는데 내가 사용한 / 할 방법으로 정리 와일드카드로 설정할 도메인의 ip를 가진 인스턴스가 없었기 때문에 dns 레코드마다 개별 https 인증서를 발급하였음. 시도하기전에 nginx는 stop 해야한다 또, api서버의 경우에는 nginx sites-available의 default를 사용하고 있었다면 새로 파일을 만들어 enabled와 링크해서 그럼 지금부터 갓피티가 알려준 방법 네, certbot을 사용하여 Let's Encrypt SSL/TLS 인증서를 발급받는 과정을 자세히 안내해 드리겠습니다. 여기서는 Ubuntu Linux를 예로 들어 설명하겠습니다. 1. certbot 설치 Ubuntu에서 certbot을 설치하려면, 다음 단계를 따..
-
-
[Date] date 함수TIL 2024. 3. 26. 15:24
Date 함수의 .now() 등을 통해 얻어온 값은 utc기준 값인지, 로컬 기준 값인지 확인하기.또 거기서 .getHours()등의 메소드로 추출한 값이 로컬기준의 값인지 utc 기준의 값인지 확인하기date 객체는 로컬과 utc 두가지의 시간을 각각 보유하고있음KST로컬시간을 쓰는 서버에서 DATE함수를 이용해서 UTC 시간을 쓰는 DB에서 createdAt 기준으로 조회한다고 할 때, KST는 UTC보다 9시간이 빠르니 그걸 계산한답시고const sixOfTodayKST = new Date();sixOfTodayKST.setHours(6, 0, 0, 0);const sixOfTodayUTC = new Date(sixOfTodayKST.getTime() - (9 * 60 * 60 * 1000));이렇..
-
[linux] - 파일 경로 성격TIL 2024. 3. 12. 15:20
redis 인스턴스를 두개 실행시키는 과정에서 6379포트 인스턴스와 6380포트 인스턴스 redis의 실행파일 경로를 다르게 해서 위치시켰었는데, 이에 대해 gpt한테 물어봤던 결과 -> 실행파일의 종류가 아니라, 기본설정인지 사용자정의설정인지에 따라 구분 Q: 두 실행파일의 경로가 /lib/systemd/system/ /etc/systemd/system/ 로 다른데, 이거 문제 없겠지? A: /lib/systemd/system/과 /etc/systemd/system/ 경로에 위치한 systemd 서비스 파일 사이의 차이는 일반적으로 문제를 일으키지 않습니다. 실제로, 이 두 경로의 사용 목적에는 구체적인 의도가 있습니다: /lib/systemd/system/: 이 경로는 패키지 관리자에 의해 설치된 ..