전체 글(575)
-
5.Controlling your configuration with the Spring Cloud Configuration Server
🚀 Spring Cloud Configuration Server를 활용한 설정 관리🎯 애플리케이션 설정과 코드의 분리소프트웨어 개발에서 가장 중요한 원칙 중 하나는 애플리케이션 설정을 코드에서 분리하는 것입니다.✅ 하드코딩된 설정값을 피해야 하는 이유코드에 직접 설정값을 넣으면 설정 변경 시 애플리케이션을 다시 컴파일 및 배포해야 함배포 속도가 느려지고, 유지보수가 어려워짐✅ 설정을 코드에서 완전히 분리하면?개발자와 운영팀이 설정을 쉽게 변경할 수 있음애플리케이션을 다시 빌드하지 않고도 설정을 동적으로 변경 가능하지만 새로운 설정 파일을 별도로 관리해야 하므로 복잡성이 증가📌 따라서, 설정 관리를 체계적으로 하기 위해 Spring Cloud Configuration Server를 활용할 수 있음!?..
2025.03.04 -
The DevOps story: Building for the rigors of runtime
🚀 DevOps 관점에서의 마이크로서비스 운영 전략🎯 마이크로서비스 운영의 핵심 원칙DevOps 엔지니어링에서 마이크로서비스를 설계할 때 중요한 것은 서비스의 운영 및 유지보수입니다.코드를 작성하는 것보다 서비스를 안정적으로 운영하는 것이 더욱 어렵기 때문에, 다음 네 가지 원칙을 따르는 것이 중요합니다.1️⃣ 마이크로서비스는 독립적으로 배포 가능해야 한다.서비스는 자급자족(self-contained) 되어야 하며, 독립적으로 배포할 수 있어야 한다.단일 소프트웨어 아티팩트(JAR 등)로 여러 인스턴스를 실행 및 종료 가능해야 한다.2️⃣ 마이크로서비스는 설정이 가능해야 한다.서비스가 시작될 때 중앙 저장소에서 환경 설정을 읽거나, 환경 변수로 설정을 전달받아야 한다.서비스 설정을 위해 사람이 직접 ..
2025.03.03 -
Implementing Spring HATEOAS to display related links
📌 Spring HATEOAS를 활용한 연관 링크 표시하기🔹 Spring HATEOAS란?HATEOAS(Hypermedia as the Engine of Application State)는 API가 리소스에 대한 관련 링크를 포함하여 클라이언트가 응답을 기반으로 다음 액션을 쉽게 수행할 수 있도록 하는 원칙입니다.Spring HATEOAS는 이를 지원하는 경량 프로젝트로, API 응답에 관련 링크를 추가하여 서비스 탐색성을 높일 수 있도록 도와줍니다.필수 기능은 아니지만, API의 가이드 역할을 수행하며 전체 리소스에 대한 경로를 제공하기 때문에 마이크로서비스 환경에서 유용하게 활용될 수 있습니다. 💡🎯 Spring HATEOAS 적용 예제다음은 License 리소스에 대한 HATEOAS 적용 결..
2025.03.03 -
HATEOAS(Hypermedia as the Engine of Application State)
🌐 HATEOAS(Hypermedia as the Engine of Application State) 상세 설명🔥 1. HATEOAS란?HATEOAS(Hypermedia as the Engine of Application State)는 REST API의 확장 개념으로,클라이언트가 별도의 API 문서 없이도 응답 데이터에 포함된 하이퍼링크를 사용하여 동적으로 리소스를 탐색할 수 있도록 하는 기법입니다.✅ 즉, API 응답에 다음 가능한 액션(링크)을 포함하여, API 사용자가 이를 보고 자연스럽게 API를 활용할 수 있도록 하는 것! 📌 REST API vs HATEOASREST APIHATEOAS요청에 대해 JSON/XML 응답 반환응답에 추가 가능한 링크(URI) 포함API 문서를 따로 확인해야 ..
2025.03.03 -
Adding internationalization into the licensing service
🌍 Spring Boot 마이크로서비스 국제화(i18n) 적용하기🎯 1. 국제화의 필요성국제화(i18n, internationalization)는 다양한 언어와 지역 환경을 지원하는 애플리케이션을 개발하는 과정입니다.🌎 사용자가 다양한 언어 환경에서 동일한 기능을 사용할 수 있도록 지원해야 합니다.✅ 목표:라이선스 서비스에서 언어별 메시지 번역 적용Accept-Language 헤더를 통해 언어 변경 가능다국어 메시지를 Spring의 MessageSource를 활용하여 관리🏗 2. Spring Boot 설정 추가Spring Boot에서 국제화를 적용하기 위해 LocaleResolver와 MessageSource를 설정해야 합니다.📝 📌 LocaleResolver & MessageSource 설정..
2025.03.02 -
Building the doorway into the microservice: The Spring Boot controller
🎯 1. Spring Boot 컨트롤러의 역할Spring Boot에서 컨트롤러는 서비스 엔드포인트를 노출하고 HTTP 요청을 처리하는 핵심 역할을 합니다.🔹 RESTful API의 핵심 원칙✅ HTTP/HTTPS 사용 → 서비스 호출은 HTTP 프로토콜을 통해 수행✅ 표준 HTTP 메서드 활용 → GET, POST, PUT, DELETE✅ JSON 기반 데이터 직렬화 → JSON을 통해 데이터를 주고받음✅ HTTP 상태 코드 활용 → 200(성공), 404(찾을 수 없음), 500(서버 오류) 등🏗 2. Spring Boot 컨트롤러 클래스 구현📝 pom.xml 4.0.0 org.springframework.boot spring-boot-starter-parent 3.4.3 com...
2025.03.02