[Logging] 로그 출력을 효율적으로 생성 및 추적하기 2편
·
Spring/Logging
Logging Trace V2목차TraceV2TraceId에서 추가된 메서드TestControllerService결과문제점TraceV2V2에서는 beginSync() 메서드를 호출하여 TraceId 값을 일관적으로 사용할 수 있도록 동기화하고 depth를 설정해준다.@Slf4j@Componentpublic class TraceV2 { private static final String START_PREFIX = "-->"; private static final String END_PREFIX = "TraceId에서 추가된 메서드public TraceId createNextId() { return new TraceId(traceId, level + 1);} Test이전과 다른 점..
[Logging] 로그 출력을 효율적으로 생성 및 추적하기 1편
·
Spring/Logging
Loggin에 TraceId를 부여하여 추적을 쉽게 만들기목차요구 사항TraceID 클래스TraceStatus 클래스TraceV1TestControllerService결과문제점우선 내 로그 기록을 살펴보면서 어떤 개선이 필요한지 찾아보자select u1_0.uuid,u1_0.account_status,u1_0.address1,u1_0.address2,u1_0.birthday,u1_0.birthyear,u1_0.email,u1_0.fcm_token,u1_0.mapx,u1_0.mapy,u1_0.mate_mate_uuid,u1_0.name,u1_0.nickname,u1_0.owner_uuid,u1_0.password,u1_0.phone_number,u1_0.profile_image,u1_0.role,u1_0...
[Spring Batch5] Batch를 사용해서 추가정보 미 등록 유저 삭제하기
·
Spring/Batch
[요구사항]1. 소셜 회원가입 유저는 리다이렉트 하여 추가 정보 가입 페이지로 이동한다.(그 이전까지는 회원의 'isNewUser' 컬럼이 true)2. 추가 정보 가입 페이지 입력을 모두 마친 유저는 'isNewUser'컬럼이 false로 변경된다.3. 3개월 이상 추가 정보 가입을 마치지 않은 유저는 삭제 처리한다. (Soft Delete방식으로 'isDelete'가 true 처리)  [구현 코드]1. application.yamldataSource를 두 구개로 나눠 진행했다. 하나는 기존에 사용하던 데이터가 담겨 있는 DB이고, 하나는 배치 작업 과정이 담겨있는 메타 데이터 DB였다.spring.batch.job = false로 하는 이유는 애플리케이션 초기화 단계에서 job으로 등록한 작업들을 수..
[Elastic Search] Elastic Search 개념
·
Spring
ElasticSearchElasticSearch는 많은 데이터를 다루는 검색 엔진으로 고려할 만한 오픈소스 도구이다. ElasticSearch는 ELK 스택(ElasticSearch, Logstash, Kibana, 그리고 Beats)을 구성하는 주요 요소 중 하나로, 다양한 데이터 분석과 검색 작업에서 활용된다.ElasticSearch와 비교할 수 있는 다른 검색 및 데이터 관리 솔루션으로는 Solr, Splunk, MongoDB, 그리고 Cassandra 등이 있다. 이들 솔루션과 비교했을 때 ElasticSearch는 다음과 같은 강점을 가진다:빠른 실시간 검색: ElasticSearch는 검색 속도가 매우 빠르며 실시간 데이터 처리가 가능하다. 이는 Solr와 비슷한 검색 기능을 제공하지만, El..
[CS 면접 질문] OS - 운영체제 관련 질문 리스트
·
면접 준비/OS
아래 질문들에 개념들은 링크에서 확인할 수 있습니다.2024.12.12 - [면접 준비/OS] - [CS 면접 질문 / OS]프로세스와 스레드2024.12.12 - [면접 준비/OS] - [CS 면접 질문/ OS] 멀티 프로세스와 멀티, IPC, Pipe, Siganl 개념2024.12.12 - [면접 준비/OS] - [CS 면접 질문/ OS] 동기화와 교착 상태2024.12.19 - [면접 준비/OS] - [CS 면접 질문 / OS] 가상 메모리, 페이징, 내부 단편화, 외부 단편화, 페이지 교체 알고리즘  해당 내용들은 이것이 취업을 위한 컴퓨터 과학이다 내용을 기반으로 정리하였습니다.면접 질문1. 공유 메모리 기반 IPC가 소켓 통신보다 빠른이뉴는?공유 메모리는 동일한 메모리 공간에서 직접 접근하여..
[CS 면접 지식 -Java] 동일성과 동등성, equals()와 ==의 차이
·
면접 준비/Java
동일성과 동등성은 객체를 비교할 때 중요한 방식이다.자바에서는 두 개의 객체 또는 값을 비교할때 equals()또는==를 통해 구분할 수 있다. 1. equals와 ==의 차이equals()는 객체의 내용을 비교하는 반면, ==는 객체의 참조주소를 비교한다. 따라서 두 객체의 내용이 같더라도 서로 다른 객체라면 equals()는 true를 반환할 수 있지만 ==는 false를 반환한다. 2. 동등성(Equality) 동등성은 논리적으로 객체의 내용이 같은지 비교한다. 이때 사용하는 equals()메서드는 클래스에서 오버라이드하여 어떤 값을 비교할 것인지 설정할 수 있다.이때 중요한건 객체의 equals뿐만 아니라 hashCode도 오버라이드를 해줘야 한다는 점이다.그 이유는 해시값을 사용하는 자료 구조는..