728x90

Error & 해결방법 10

java.net.SocketTimeoutException: Read timed out 오류

최초 로그 (15:31:24)발생 시간: 2024-12-19 15:31:24.044로그 레벨: ERROR원인:ResourceAccessException 발생.I/O error 발생: GET 요청에서 Read timed out.java.net.SocketTimeoutException: Read timed out: 요청에 대한 응답이 일정 시간 내에 오지 않아 연결이 끊어졌음.원인애플리케이션이 인증 서버에 GET 요청을 보냈으나, 인증 서버의 응답을 기다리는 동안 타임아웃이 발생했습니다. 이 경우, 네트워크 지연, 서버 과부하, 또는 타임아웃 설정이 너무 짧은 경우가 원인일 수 있습니다.문제 분석 및 원인1. 토큰 만료 문제 (OAuth2Exception)만료된 토큰 사용: 클라이언트가 만료된 OAuth2 ..

Deadlock found when trying to get lock; try restarting transaction 오류

데드락은 데이터베이스에서 두 개 이상의 트랜잭션이 서로 자원을 점유한 상태에서, 상대방이 점유한 자원을 요청하며 무한 대기 상태에 빠지는 상황을 말합니다.결과적으로 이 상태에서는 트랜잭션이 진행되지 못하며, 데이터베이스는 교착 상태를 해결하기 위한 조치를 취하지 않으면 정상 작동에 장애가 발생합니다.Deadlock 발생 과정트랜잭션 A와 B의 동시 실행:트랜잭션 A가 자원 X를 잠그고, 이후 자원 Y를 요청.동시에 트랜잭션 B가 자원 Y를 잠그고, 이후 자원 X를 요청.자원 충돌:트랜잭션 A는 자원 Y를 점유한 트랜잭션 B를 기다리고,트랜잭션 B는 자원 X를 점유한 트랜잭션 A를 기다립니다.Deadlock 발생:두 트랜잭션이 서로 상대방의 자원을 기다리며 대기 상태에 빠지고, 진행이 불가능해집니다.   ..

csv 파일 인코딩 이슈 해결법

데이터베이스에서 로우 데이터를 추출하는 등, 데이터를 csv 파일로 내려받아 데이터를 확인하면 인코딩이 깨져 제대로 보이지 않는 경우가 있습니다. 이 때, 조치할 수 있는 해결법에 대해 말씀드리고자 합니다. 1. csv 파일 추출먼저 테스트용 로우 데이터를 csv 파일로 추출합니다.아래는 테이블에서 로우 데이터를 csv 파일로 추출하는 쿼리문 예시입니다.SELECT * FROM your_tableINTO OUTFILE '/path/to/your_file.csv'FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n';쿼리문에서 세부적인 데이터 조건은 따로 추가하여 사용하시면 됩니다. 2. csv 파일 엑셀로 open 3. 메모장으로 다시 ope..

REST API?

REST API(Representational State Transfer API)는 REST 아키텍처 스타일을 준수하는 웹 API로, 웹 애플리케이션이 서로 데이터를 주고받을 수 있도록 돕는 대표적인 방식입니다. REST API는 웹 프로토콜인 HTTP를 이용하며, 클라이언트-서버 구조로 데이터를 주고받습니다. REST는 자원을 URL로 식별하고, HTTP 메서드를 통해 CRUD 작업을 수행합니다. 다음은 REST API의 주요 개념과 동작 방식입니다. 1. REST API의 주요 원칙REST API는 다음과 같은 아키텍처 원칙을 따릅니다.무상태성(statelessness): 각 요청은 독립적이고, 서버는 클라이언트의 이전 요청 정보를 저장하지 않습니다. 따라서 요청마다 필요한 모든 정보를 포함하여 보내..

OAuth 2.0?

OAuth 2.0이란?OAuth 2.0은 권한 부여를 관리하기 위한 표준 프로토콜로, 다양한 애플리케이션(서드파티 앱 포함)이 리소스 소유자(사용자)의 자원(예: 프로필, 사진, 이메일)을 권한을 받아 접근할 수 있도록 설계되었습니다.  OAuth 2.0은 크게 다음의 네 가지 주요 역할을 포함합니다:리소스 소유자(Resource Owner): 자원에 대한 소유권을 가진 사용자.클라이언트(Client): 자원 소유자를 대신해 API 호출을 하는 애플리케이션.권한 서버(Authorization Server): 토큰을 발급하고 권한을 부여하는 서버.리소스 서버(Resource Server): 보호된 리소스(API)를 제공하는 서버. /oauth2/token의 역할이 엔드포인트는 OAuth 2.0 인증 flo..

org.springframework.web.client.HttpServerErrorException$BadGateway: 502 Bad Gateway 에러 원인 및 해결방법

502 Bad Gateway 에러는 클라이언트가 요청을 보낼 때, 서버가 다른 서버(예: 백엔드 서비스, 데이터베이스, 외부 API 등)로부터 유효한 응답을 받지 못했을 때 발생하며, 이 에러는 주로 서버 간의 통신 문제와 관련이 있음org.springframework.web.client.HttpServerErrorException$BadGateway: 502 Bad Gateway 에러는 Spring에서 HTTP 통신 중 발생하는 예외이며, 주로 외부 서버와의 통신에서 502 에러가 반환될 때 발생함 502 Bad Gateway 에러의 주요 원인:백엔드 서버 문제:클라이언트가 요청을 보낸 서버가 다른 서버로 요청을 전달하는데, 해당 백엔드 서버가 일시적으로 다운되었거나 응답을 제대로 하지 못하는 경우.네..

뉴맨틀?

얼마 전 알려드린 꼬맨틀(단어 맟히기 게임)의 개선 버전입니다.꼬맨틀을 오래 해보신 분들이라면 이해가 잘 안되는 단어가 정답인 경우가 많다고 느끼셨을 겁니다.저 역시 유사도에 대한 의구심이 많이 들었습니다. https://www.newmantle.kr/# 뉴맨틀 - 단어 맞히기 게임꼬맨틀을 개선한 새로운 단어 맞히기 게임, 뉴맨틀에 도전해보세요!www.newmantle.kr 개선된 모델을 바탕으로 수정하여 기존 꼬맨틀보다 더 유의미한 유사도를 확인할 수 있다고 합니다.  직접 플레이 해보니 단어를 유추한다는 점에서는 동일한 메커니즘이지만, 뉴맨틀에는 힌트가 있다는 사실!  => 힌트는 최대 10위까지만 보여줍니다. 포기하기 전에 힌트라도 보라는 개발자의 의도가 보입니다.  후기정답을 맞추고나서 제가 유추..

[FCM] Firebase Cloud Messaging?

Firebase Cloud Messaging(FCM)은 Google의 Firebase 플랫폼의 일부로, Android 및 iOS 애플리케이션에 푸시 알림을 전송할 수 있는 서비스입니다. FCM을 사용하면 개발자는 클라이언트 애플리케이션에 메시지를 전송하여 사용자와의 상호작용을 강화할 수 있습니다.1. FCM?Firebase Cloud Messaging(FCM)은 클라우드에서 모바일 기기로 메시지를 전송할 수 있는 서비스입니다. 이를 통해 개발자는 사용자에게 실시간으로 알림을 보낼 수 있으며, 이는 앱의 활성화를 유지하는 데 도움이 됩니다. 2. FCM 기능알림 메시지: 사용자에게 푸시 알림을 보낼 수 있습니다. 예를 들어, 새로운 콘텐츠가 추가되었을 때 사용자에게 알림을 보낼 수 있습니다.데이터 메시지:..

꼬맨틀?

꼬맨틀 링크 - https://semantle-ko.newsjel.ly/꼬맨틀이란, 뉴스젤리라는 데이터 시각화 전문 기업에서 만든 단어 유사도 추측게임을 칭하는 말입니다.David Turner의 Semantle과 Johannes Gätjen의 Semantlich를 바탕으로 데이터 시각화 전문기업 뉴스젤리가 만들었다고 합니다. 꼬맨틀 - 단어 유사도 추측 게임 - 뉴스젤리 : 데이터 시각화 전문 기업하루에 한 번, 오늘의 단어를 맞혀보세요. 단어를 입력하면 정답 단어와의 유사도를 보여줍니다.semantle-ko.newsjel.ly 꼬맨틀의 모티브가 된 David Turner의 Semantle과 Johannes Gätjen의 Semantlich는 영어 단어를 기준으로 개발되었기에, 우리나라에서 원활하게 즐길..

이메일 서명, 템플릿 지정하는 법

이메일을 업무용으로 자주 쓰시는 분들은 ​이메일을 보낼 때 인사말과 본문, 그리고 하단 부분에 마치는 글과 본인 소개글을 넣어서 보내실텐데요,​미리 만들어진 템플릿을 불러와서 내용만 쓰게끔 하는 기능이 있으면​얼마나 좋을까요?​(이미 알고 쓰고 계신 분들이라면 패스하셔도 됩니다.)​​Gmail을 기준으로 알려드리겠습니다. 이 기능은 네이버나 다른 이메일에서도 가능합니다 :) ​ 1. Gmail 창 오른쪽 상단에 보시면 톱니바퀴 모양 클릭​​2. 모든 설정 보기 클릭 - 서명​​3. 서명 새로 만들기 후 기본값 지정** 새로운 이메일을 작성할 때는 test 템플릿으로, 수신된 이메일에 대한 답장을 작성할 때는 업무용 템플릿을 사용하도록 지정할 수 있습니다.(예시)​​4. 변경사항 저장반드시 설정 맨아래 저..

728x90