본문 바로가기

반응형

Study

(306)
JDK 12 ~ JDK 17 사이 추가된 language specification feature 이 글은 JDK 12 ~ 17 사이에 추가된 language specification feature에 대해 정리한 내용입니다. 만약 각 JDK별 변경 사항을 확인하고 싶은 경우 이전 글을 참고하면 됩니다. 2019.07.18 - [Study/Java] - JDK 12 New Features 2019.09.25 - [Study/Java] - JDK 13 New Features 2020.03.30 - [Study/Java] - JDK 14 New Features 2020.10.13 - [Study/Java] - JDK 15 New Features 2021.03.18 - [Study/Java] - JDK 16 New Features 2021.09.15 - [Study/Java] - JDK 17 New Feat..
JDK 17 New Features JDK의 버전별 변경 사항은 이곳을 참고하세요. JDK 12 ~ 17 사이 추가된 language specification feature는 이곳을 참고하세요. JDK 17은 변경된 릴리즈 정책에 따라 3년 만에 나오는 LTS 버전이다. 따라서 향후 JDK 23이 나오기 전까지 대부분의 경우 JDK 11 -> JDK 17로 변경하여 사용하게 된다. Spec Java SE 17 Platform JSR 392에 정의된 바와 같이 JSR 392 구현이 목표 실제 Spec은 Final Release Specification 문서를 참고해야 함 Final Release Specification Feature Summary 전체 JEP Feature 목록은 OpenJDK의 JDK17 문서로 확인할 수 있다. Comp..
Spring Boot에서 Resilience4j 사용해보기 공부하면서 기록한 내용 Spring Boot와 Resilienct4j에 대한 내용만 살펴봄 Hystrix -> Resilience4j로 변경되는 이유 Netflix OSS 제품군의 다양한 프로젝트들을 Spring에서 사용하기 위해 Spring 진영에서는 Spring Cloud Netflix 프로젝트를 제공하였다. Netflix는 Hystrix, Ribbon, Turbine, Zuul과 같은 다양한 라이브러리를 공개하여 웹서비스의 장애 대응, 서비스 분산에 대한 좋은 대안들을 제시하였고 많이 쓰였다. 하지만 2018년에 Netflix가 ribbon, hytrix를 유지관리 모드 (maintenance mode, 새로운 기능을 추가하지 않고 버그 및 보안 문제만 수정)로 더 이상 개발하지 않는다고 발표하면서..
Java lambda expression(람다 표현식)을 사용한 지연 연산(Lazy Evaluation) Spring DispatcherServlet은 어떻게 LocaleContext에서 Locale을 지연 실행하여 획득할 수 있을까? spring-webmvc의 DispatcherServlet에는 Locale을 획득하는 코드가 다음과 같은 형태로 구현되어 있다. (전체 코드 참고) @Override protected LocaleContext buildLocaleContext(final HttpServletRequest request) { LocaleResolver lr = this.localeResolver; if (lr instanceof LocaleContextResolver) { return ((LocaleContextResolver) lr).resolveLocaleContext(request); } ..
kubernetes kubectl 명령어 모음 여기 있는 내용은 모두 아래 공식 한글 문서의 내용임. 운영자가 아닌 사용자 입장에서 많이 쓰는 명령어 위주로 정리 https://kubernetes.io/ko/docs/reference/kubectl/overview/ kubectl 개요 Kubectl은 쿠버네티스 클러스터를 제어하기 위한 커맨드 라인 도구이다. 구성을 위해, kubectl 은 config 파일을 $HOME/.kube 에서 찾는다. KUBECONFIG 환경 변수를 설정하거나 --kubeconfig 플래그를 설정하여 kubernetes.io kubectl은 kubernetes cluster를 제어하기 위한 command line tool이다. config file은 $HOME/.kube에서 찾으며 KUBECONFIG 환경 변수를 설정하거나..
jenkins execute shell 에서 사용할 수 있는 환경 변수 목록 확인 jenkins의 shell script에서 다양한 작업을 할 수 있다. 예를 들면 다음과 같이 호출하여 실행 중인 job 이름 확인이 가능하다. echo ${JOB_NAME} 아래와 같이 출력이 된다. 현재 실행 중인 jenkins job에 대해 실행 id, 실행 또는 git을 호출한 경우 git commit 정보 등을 가져와 별도의 처리를 한다거나 현재 job이 실행 중인 위치를 기준으로 이동을 한다거나 등등 다양한 작업을 하기 위해 환경 변수를 사용해야 한다. 이런 환경 변수가 어떤 값이 있는지에 대한 목록을 jenkins가 제공해주는데 execute shell 입력 부분 아래에 링크로 안내되어 있다. 해당 링크 주소는 [젠킨스주소]/env-vars.html/ 이다. 해당 링크를 보면 다양한 환경 변..
maven central repository에 라이브러리 배포하기 2025-05-13 추가maven central repository 배포 방식이 변경되어 아래 방법은 더 이상 유효하지 않습니다.아래 링크를 참고하세요.2025.05.12 - [Study/CI&CD] - Maven Central Portal 배포하기 (기존 OSSRH 배포 방식 변경)github의 maven project를 maven central repotisory (https://search.maven.org/)에 등록하면서 한 작업들을 기록등록을 위한 가이드는 아래와 같다.https://central.sonatype.org/publish/publish-guide/ OSSRH Guide - The Central Repository DocumentationGetting started Introducti..
Dockerfile 명령어 명령어는 대소문자를 가리지 않으나 보통 대문자로 사용함 https://docs.docker.com/engine/reference/builder/ Dockerfile reference docs.docker.com 아래의 경우 docker 실행 가능한 jenkins 이미지를 만드는 Dockerfile이다. FROM jenkins/jenkins:jdk11 MAINTAINER bluesky USER root RUN curl -fsSL https://get.docker.com -o get-docker.sh \ && sh get-docker.sh RUN usermod -aG docker jenkins USER jenkins 위 Dockerfile은 다음과 같이 수행된다. jdk11 버전의 jenkins image를..

반응형