본문 바로가기
반응형

전체 글76

<모니터링의 새로운 미래 관측 가능성> 후기/요약 은 현대 IT 운영 환경에서 관측 가능성에 대한 본질적인 가치를 탐구하는 데 깊이를 더해주는 소중한 자료입니다. 책은 모니터링과 관측 가능성의 차이에 대한 명확한 이해를 제공하며, 관측 가능성이 화이트박스와 예측 영역을 다루면서 미래 이벤트를 예측하고 IT 운영을 자동화하는 데 초점을 맞추고 있다는 사실을 독자에게 명확하게 전달합니다. 여러 핵심 키워드인 메트릭, 로깅, 트레이싱, 쿠버네티스, 서비스메쉬, 프로메테우스, 그라파나, 오픈텔레메트리를 통해 관측 가능성의 핵심 개념과 이를 실제로 구현하는 방법을 자세히 살펴볼 수 있습니다. 이를 통해 독자는 이러한 도구와 기술들이 어떻게 현대 IT 시스템에서 중요한 역할을 하는지에 대한 실전적인 통찰력을 얻을 수 있습니다. 저자는 특히 시계열 데이터베이스의 중.. 2024. 1. 13.
[Spring] Interceptor (feat. Servlet의 Filter 비교) Spring Interceptor 깊게 알아보기 오늘은 Spring Interceptor에 대해 깊게 알아보도록 하겠습니다. 이 포스팅은 @dev.pedia 인스타그램 게시물을 기반으로 작성되었습니다. Spring Interceptor란? Spring Interceptor는 Controller에 들어오는 요청(HttpRequest)과 응답(HttpResponse)를 ‘가로채는’ 역할을 하는 객체입니다. Interceptor를 활용하면 Controller의 로직을 수정하지 않더라도, 요청-응답의 사전/사후에 제어가 가능합니다. 예를 들어, 요청 전 Session에서 로그인 여부를 확인 후 로그인 페이지로 redirect 하는 등의 작업이 가능합니다. Spring MVC Request Lifecycle Sp.. 2023. 10. 15.
[개발서적 추천] 도메인 주도 설계로 시작하는 마이크로서비스 개발 "도메인 주도 설계로 시작하는 마이크로서비스 개발"이라는 책에 대한 내용을 바탕으로 작성되었습니다. 이 도서는 개발 백과사전 추천 도서 3으로, 제품 중심의 개발/피드백으로 스프린트를 구성하고 MSA 체제를 만드는 방법에 대해 다루고 있습니다. 1. 개발 생명주기는 프로젝트 단위가 아닌 제품 중심 Agile 방법론은 Waterfall 방식에 비해 개발 생산성을 해칠 수도 있지만 산출물을 프로젝트 단위가 아니라 제품 단위로 쪼개는 것은 분명히 효과가 있다. 이 방식을 채택함으로써 제품 중심의 개발과 피드백을 통해 스프린트를 구성하여 MSA 체제를 만드는 것이 가능하다. 2. 유연성과 장애복구를 위한 API Gateway 패턴 API Gateway 패턴은 App, Web 등 여러 클라이언트가 MSA의 서비스.. 2023. 10. 13.
IT NEWS: 2023년 10월 첫째 주의 주요 소식 안녕하세요. IT 뉴스를 전해드리는 @dev.pedia 입니다. 이번 주에는 인공지능, 프로그래밍 언어, 데이터베이스 등 다양한 분야에서 주요 뉴스가 발표되었습니다. 각 단락에서 구체적인 내용을 확인하세요. ChatGPT, 실시간 검색 가능 OpenAI의 인공지능 대화 모델인 ChatGPT가 업데이트되어 실시간 인터넷 환경의 정보를 제공할 수 있게 되었습니다. 이전에는 2021년 9월 이전의 데이터로만 학습되었던 ChatGPT가 이제는 실시간 인터넷 환경의 정보를 제공할 수 있도록 변화되었습니다. 또한, 직접 링크 등 출처를 제공함으로써 사용자가 원하는 정보를 더욱 정확하게 얻을 수 있게 되었습니다. 이 새로운 기능은 Plus 및 Enterprise 사용자에게는 바로 적용되며, 점차 모든 사용자로 확대할.. 2023. 10. 9.
[ELK] Elasticsearch 검색 Query 종류 (추천/비추천 패턴) 추천 쿼리 match 쿼리 - 문서의 필드에 설정해둔 analyzer를 사용하여 검색어의 토큰을 바탕으로 검색하는 가장 많이 사용되는 쿼리. match_phrase 쿼리 - 거의 사용할 필요는 없겠지만 검색어의 순서가 중요한 경우에 사용. 가령 “아이폰13” 검색 시 “13 아이폰” 문자열이 담긴 문서를 검색하고 싶지 않을 때. multi_match 쿼리 - 두 개 이상의 필드에 match 쿼리가 가능하므로 “제목+본문” 필터를 걸어 검색하는경우에 유용함. range 쿼리 - date 등 gte와 lte를 걸어 특정값 범위에 있는 문서를 검색할 때 유용. bool 쿼리 - query context(score값 존재)인지 filter context인지에 따라 must/should절과filter/must_n.. 2023. 6. 3.
[ELK] Elasticsearch 클러스터 트러블 슈팅 및 모니터링 1. Elasticsearch 트러블슈팅을 위한 cat API 0) _cat API 사람이 읽기 편하게 만든 api (상황을 빠르게 판단하는데 도움) 20개 이상의 API 제공 (아래 4가지가 제일 많이 사용) 1) _cat health GET _cat/health?v (v: verbose를 붙여주면 header까지 보임) cluster 이름, 상태, shard 개수 (primary, reload, init, unassign) status 확인 용 2) _cat nodes GET _cat/nodes?v e.g. GET _cat/nodes?h=ip,heap.percent,disk.avail,name&v jvm, node 메모리 사용률, cpu, load average, node.role, master(* .. 2023. 5. 5.
[ELK] Container 환경의 Elasticsearch에 대해 알아두면 좋은 것들 1. Elasticsearch 설치 시 TLS 인증 과정에서 CA Certificate와 HTTP/Transport 계층 keystore (key+certificate) 필요 - http_ca.crt, http.p12, transport.p12 파일이 Elasticsearch의 configuration 디렉토리에 생성됩니다. 이 파일들은 Kibana 인스턴스를 Elasticsearch 클러스터에 연결하고, 클러스터 내 노드끼리 통신하는데 사용됩니다. TLS configuration 설정은 elasticsearch.yml 파일에서 이뤄집니다. 1) http_ca.crt : The CA certificate that is used to sign the certificates for the HTTP layer.. 2023. 4. 8.
[JPA] 엔티티 식별자의 DB 매핑 전략 : IDENTITY vs SEQUENCE 1. 들어가며 JPA 명세로 개발하는 SpringBoot에서는 Entity ID 생성 시 데이터베이스의 기본 키(primary key)를 자동 생성하는 방식을 사용합니다. 만약 주민번호나 SystemId처럼 비즈니스 로직 상 유일할 것처럼 보이는 자연키를 PK로 설정한다면, 추후 비즈니스 변경이나 유지보수 시 DB를 Migration하는 수준의 눈덩어리처럼 굴러올 수 있기 때문입니다. JPA는 DB 기본 키 할당 전략으로 직접 할당 방식과 자동 생성 방식 두 가지를 제공합니다. 직접 할당 방식은 Application에서 기본 키를 직접 할당하는 방식이며, 자동 생성 방식은 대리 키를 사용하는 방식으로 AUTO, IDENTITY, SEQUENCE, TABLE 네 가지가 있습니다.해당 방식들은 사용하는 DB.. 2023. 4. 8.
[Kubernetes] 쿠버네티스 환경에서의 JVM 동작/배포/성능 최적화 목차 1. 들어가며 2. JVM (Java Virtual Machine) 기본 개념 2.1. JVM 이란? 2.2. JVM 구성 요소 2.3. JVM 동작 원리 3. 쿠버네티스(Kubernetes) 기본 개념 3.1. 쿠버네티스란? 3.2. 쿠버네티스의 주요 구성 요소 3.3. 쿠버네티스 클러스터 구조 4. 쿠버네티스에서 JVM 애플리케이션 배포하기 4.1. Docker 이미지 생성 4.2. 쿠버네티스 배포 설정 4.3. 서비스 및 인그레스 설정 5. 쿠버네티스 환경에서 JVM 성능 최적화 5.1. JVM 메모리 관리 5.2. 가비지 컬렉션 튜닝 5.3. 리소스 제한과 요청 설정 5.4. CPU 관리 6. 쿠버네티스에서 JVM 모니터링 및 로깅 6.1. 모니터링 도구 소개 6.2. 로깅 전략 6.3. 로.. 2023. 3. 20.
반응형