일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- hdfs
- Java
- Spring
- design pattern
- Spring XD
- Clean Code
- 인텔리J
- Hbase
- 제주
- 도메인주도설계
- spark
- 엘라스틱서치
- hadoop
- 스프링 배치
- elastic search
- hibernate
- intellij
- Angular2
- apache storm
- Gradle
- nginx
- docker
- Spring Boot
- Storm
- SBT
- Spring Batch
- Linux
- elasticsearch
- scala
- DDD
- Today
- Total
목록Programming (144)
욱'S 노트

스프링 부트 MVC 프로젝트 만들기개발 환경은 Intellij이다. 일단 IntelliJ로 프로젝트를 빠르게 구성해보자. 최근에는 거의 코틀린을 사용하기 때문에 코틀린으로 진행해보겠다. 프로젝트 생성은 Spring Boot로 하자. Spring Web과 Spring Data JPA 디펜던시만 추가한다. Data JPA를 설정했으면 JdbcDriver 설정 등이 필요하다. H2 데이터베이스를 디펜던시를 추가해준다.dependencies { implementation("org.springframework.boot:spring-boot-starter-data-jpa") implementation("org.springframework.boot:spring-boot-starter-web") im..

마이크로미터를 시작하면서 집킨과 비교하면서 오픈텔레메트리(aka. Otel)에 대해서 간략하게 알아보았지만, 좀 더 자세히 살펴보겠다. CNCF ?오픈텔레메트리는 비영리 리눅스 재단의 CNCF(Cloud Native Computing Foundation)의 주요 프로젝트이다. CNCF의 각 단계는 다음과 같으며, 오픈텔레메트리는 현재 인큐베이팅이다. 밑에 도표로 보면 인큐베이팅 프로젝트도 굉장한 프로젝트임을 알 수 있다.Graduated - 안정적이고 널리 채택되었으며 제품 출시 준비가 완료된 것으로 간주되는 프로젝트로, 수천 명의 컨트리뷰터Incubating - 소수의 사용자가 제품에서 성공적으로 사용하고 건전한 컨트리뷰터 풀Sandbox - 아직 제품에서 널리 테스트되지 않은 실험적인 프로젝트로 ..

마이크로미터 오픈텔레메트리 기본 세팅은 지난 시간에 해봤었다. 그럼 Tracing API에 대해서 조금 더 알아보자. 예제 코드 먼저 기본 세팅은 그대로 유지한다.import io.micrometer.tracing.otel.bridge.OtelCurrentTraceContextimport io.micrometer.tracing.otel.bridge.OtelTracerimport io.micrometer.tracing.otel.bridge.Slf4JEventListenerimport io.opentelemetry.sdk.OpenTelemetrySdkfun main() { // [OTel component] The SDK implementation of OpenTelemetry val openTe..

마이크로미터에서 트레이싱을 위해서 지원하는 구현체는 크게 두가지가 있다. 하나는 Zipkin이고 다른 하나는 OpenTelemetry다. 둘의 차이점을 챗지피티로 알아보면 다음과 같다.Zinkin vs OpenTelemetry개요 Zipkin: Twitter에서 개발한 오픈소스 분산 트레이싱 시스템. 서비스 간의 요청 흐름을 추적하여 성능 문제를 분석할 수 있음.OpenTelemetry: 클라우드 네이티브 컴퓨팅 재단(CNCF)에서 관리하는 오픈소스 관찰성(observability) 프레임워크로, 트레이싱뿐만 아니라 메트릭(metrics)과 로깅(logging)도 지원함.차이점비교 항목ZipkinOpenTelemetry개발 주체Twitter (CNCF 소속)CNCF (Cloud Native Computi..

마이크로미터 트레이싱은 유명 트레이서 라이브러리를 지원하기 위한 단순한 퍼사드이다. 처음엔 스프링 클라우드팀에서 Spring Clould Sleuth라는 프로젝트로 시작했다가, Micrometer Tracing Project로 분리 통합되었다. 용어마이크로미터 트레이싱에서 용어는 Dapper의 용어를 차용한다. Span : 작업단위. 예를 들어 RPC 요청과 응답은 같은 스팬 일수도 있고, 다른 스팬 일수도 있다. 스팬은 각각의 ID, 데이터, 타임 스탬프, 키-밸류 어노테이션(태그)를 가진다. RPC 요청과 응답은 데이터가 다르므로 다른 스팬으로 분리할 수도 있고, 스팬을 유지하면서 여러개의 이벤트로 기록하기도 한다. Trace: 트리처럼 구조를 가진 스팬의 잡합이다. 예를 들어 분산 시스템에서 일련의..
개요애로우의 목적은 관용적인(idiomatic) 함수형 프로그래밍을 코틀린에 적용하는 것을 목표로 한다. 애로우는 다른 함수형 프로그래밍 커뮤니티에서 만들어진 라이브러리들의 영향을 받았다.설정설정은 gralde기반으로 일단 정리해보았다. 디펜던시 추가dependencies { implementation("io.arrow-kt:arrow-core:1.2.1") implementation("io.arrow-kt:arrow-fx-coroutines:1.2.1")} 플러그인 설정옵틱을 위한 플러그인 설정이다. 이 플러그인은 KSP(Kotlin Symbol Processing는 경량 컴파일러 플러그인.) 기반으로 만들어 졌다.plugins { id("com.google.devtools.ksp") ver..

개요Tomcat 내부 동작을 디버깅 하기 위해서 Embedded Tomcat을 이용한 내용을 정리해보록 하겠다. 기존 톰캣 서버를 설치하고, Servlet등의 테스트를 한다면 Servlet에서 디버깅 브레이크 포인트를 잡고, 스택 트레이스를 확인 할 수는 있지만 실제 톰캣이 사용하는 라이브러리등은 직접 접근하기는 어렵다. 더욱 세밀한 디버깅을 위해 Embbeded Tomcat을 활용하는 방법을 알아보자. 기존 외부 톰캣을 활용하는 방식은 아래 글을 참고하자. https://opennote46.tistory.com/257 IntelliJ Tomcat 기반 서블릿 테스트개요Servlet 3.1을 구동원리를 파악해보기 위한 사전 작업 설정에 대한 포스팅이다. 항상 스프링 스타터 혹은 고수준의 프레임워크를 경험..

개요어제는 일단 인텔리J기반에서 서블릿을 실행해보았다. 애초에 목적이 Servlet 3.1이 어떻게 동작하는지 알아보기 위함이므로 아주 간단한 Servlet 3.1 예제를 작성해보자. https://opennote46.tistory.com/257 IntelliJ Tomcat 기반 서블릿 테스트개요Servlet 3.1을 구동원리를 파악해보기 위한 사전 작업 설정에 대한 포스팅이다. 항상 스프링 스타터 혹은 고수준의 프레임워크를 경험하다보니 의외로 세팅에 삽질을 하게 되어서 간단하게 서opennote46.tistory.com Servlet 3.1 예제 작성생각보다 Servlet 3.1 예제가 많지 않다. 오라클 공식 사이트에 있는 예제를 기반으로 작성해보았다.먼저 데이터를 읽을때 사용하는 ReadListen..

개요Servlet 3.1을 구동원리를 파악해보기 위한 사전 작업 설정에 대한 포스팅이다. 항상 스프링 스타터 혹은 고수준의 프레임워크를 경험하다보니 의외로 세팅에 삽질을 하게 되어서 간단하게 서블릿테스트를 하는 방법에 대해서 포스팅을 해보겠다.테스트 환경 Idea : 2024.3Tomcat : 10.1.34Servlet : 6.0 순서톰캣 설치서블릿은 스펙이지 구현체가 아니다. 그러므로 우리는 서블릿을 실행할 서블릿 컨테이너가 필요하다. 최신 버전 톰캣을 설치하자. 나는 core에 tar볼 형태를 설치하였고, 적절한 위치에 tar 압축을 해제하였다. https://tomcat.apache.org/download-10.cgi Apache Tomcat® - Apache Tomcat 10 Software Do..
각 컴포넌트 설치elasticsearch & logstash & filebeat 설치설치는 간단하다. 자세한 설명은 하지 않겠다. elastic 공식 사이트로 접속하여 스테이블한 tar파일을 받아서 로컬의 적절한 경로에 압축 해제 하면 된다. 각 컴포넌트 구동 및 설정elasticsearch 구동결과적으로 elasticsearch에 데이터를 저장하므로 먼저 elasticsearch를 구동한다. 가장 심플하게 설치디렉토리로 가서 아래의 커맨드로 구동한다../elasticsearchingestion with filebeatfilebeat는 파일의 변경을 수집하여 logstash로 전달하는 역할을 담당한다. 가장 filebeat를 압축해제한 디렉토리를 보면 filebeat.yml 설정파일이 존재하는데 다음과 ..