목록전체 글 (72)
랄라
gateway에서 인가처리를 위해jwt 토큰의 payload 정보를 추출하여 header에 넣어 서브모듈에서 원활하게 사용할 수 있도록 진행하던 중 토큰 secretkey를 생성하기위해 찾던중 윈도우 파워쉘에서 해당 형식의 랜덤코드를 작성할 수 있다고해 시도해보았다. 본래 웹페이지 상의 jwt 토큰은 base64URL 형식으로 구성되어있는데나는 BASE64 형식의 토큰을 구성해서 발생한 오류였다. 다시 base64URL 형식의 랜덤코드를 받아오도록 명령어를 다시 찾아 수정하였다. Claims 클래스로 정보들을 받아오는 로직에서 deprecated 된 부분이 많다는 알림이 표시되었다. private Claims extractClaims(String token) { return Jwts.p..
오늘의 질문:equals와 hashCode는 왜 함께 재정의해야 할까요?*답변더보기모범답안equals와 hashCode 메서드는 객체의 동등성 비교와 해시값 생성을 위해서 사용할 수 있습니다. 하지만, 함께 재정의하지 않는다면 예상치 못한 결과를 만들 수 있습니다. 가령, 해시값을 사용하는 자료구조(HashSet, HashMap..)을 사용할 때 문제가 발생할 수 있습니다.오늘의 질문:@Component, @Controller, @Service, @Repository의 차이점에 대해서 설명해주세요.*답변더보기@Controller 컨트롤러 클래스를 표시하기위한 bean 어노테이션@Service 서비스 클래스를 표현하기위한 bean 어노테이션@Repository 데이터베이스와 연결하여 수행되는 클래스를 표현..
오늘의 질문: 로그와 메트릭을 설명해주세요.*답변더보기로그는 시스템상에 표현되는 정보기록? 메트릭은 모르겠다. 모범답안로그는 서버가 동작할 때 서버의 상태와 동작 정보를 시간 경과에 따라 기록된 결과입니다. 로그는 시스템의 오류와 문제들을 쉽게 찾아낼 수 있도록 도와줍니다. 반면, 메트릭은 시스템의 성능과 상태에 대한 통계적인 정보를 의미합니다. 메트릭을 잘 수집하면 시스템의 현재 상태를 손쉽게 파악할 수 있고, 사업 현황에 관한 유용한 정보를 얻을 수 있습니다. 가령, 메트릭은 DAU, Retension, CPU 사용량, 메모리 사용량 등이 있습니다.오늘의 질문: JPA에서 ID 생성 전략에 대해 설명해주세요.*답변더보기@id 를 사용하여 값 할당 모범답안JPA에서 ID를 생성하기 위해서는 직접 할당과..
오늘의 질문: 트랜잭션 격리수준은 무엇인가요?*답변더보기트랜잭션 진행중 다른 트랜잭션에 영향을 받지않게하는것을 말하는것이 아닐까? 모범답안트랜잭션의 격리 수준은 동시에 여러 트랜잭션이 실행될 때 한 트랜잭션이 다른 트랜잭션의 연산에 영향을 받지 않도록 하는 정도를 말합니다. 낮은 격리 수준은 동시 처리 능력을 높이지만, 데이터의 일관성 문제를 발생시킬 수 있습니다. 반면, 높은 격리 수준은 데이터의 일관성을 보장하지만, 동시 처리 능력이 떨어질 수 있습니다. 즉, 데이터 정합성과 성능은 반비례합니다. 트랜잭션 격리 수준은 개발자가 트랜잭션 격리 수준을 설정할 수 있는 기능을 제공하는 기능입니다.오늘의 질문: 얕은 복사와 깊은 복사에 대해서 설명해주세요.*답변더보기모범답안매일메일 - 얕은 복사와 깊은 복사..
Docker를 정의하고 실행하기위한 도구docker-compose.yml 파일로 애플리케이션의 관련 설정(서비스,네트워크)들을 정의docker-compose.yml 예시version: '3' # Docker Compose 파일의 버전 지정services: # 애플리케이션의 각 서비스 정의 web: # 웹 서비스 (nginx 사용) image: nginx # 사용할 Docker 이미지 지정 ports: # 컨테이너와 호스트 간의 포트 매핑 - "8080:80" # 호스트의 8080 포트를 컨테이너의 80 포트에 연결 app: # 애플리케이션 서비스 (사용자 정의 이미지 빌드) build: . # 현재 디렉토리에서 Dockerfile을 사용하여 이미지를 빌드..
대규모 시스템 설계시 중요한 요소 - 사용자가 얼마나 많이 접속하는지- 시스템이 얼마나 많은 요청을 처리할 수 있는지동시 접속자와 초당 요청량사용자 수시스템을 사용하는 사용자의 수를 파악하는것이 중요하다.제일 중요한것은 동시 접속자의 요청 수, 접속자 수의 최대 피크가 얼마나 되는지를 파악해야한다. TPS(Transactions Per Second)초당 처리되는 트랜젝션의 수, 시스템이 얼마나 많은 요청을 동시에 처리할 수 있는지를 나타내고요청량을 모니터링하여 처리능력을 확인할 수 있다. 대규모 시스템에서 중요한 역할을 함. 예상지못한 이벤트로 설계된 최대치 이상의 요청이 몰릴경우 시스템이 중단될 가능성이 있으며,이를 해결하기위한 방안을 고려해야한다. (애플리케이션 수 늘리기, 대기열 설정 등)요청 종..