마이크로서비스7 마이크로서비스 데브옵스 데브옵스는 급부상하는 IT 분야이지만 데브옵스 엔지니어에게 마이크로서비스 설계는 모두 실제 운영 환경에서 서비스 관리와 관계된 것이다. 코드 작성은 상대적으로 쉬운 일이 될 수 있고, 계속 동작하게 만드는 것이 힘들다. 다음 네 가지 원직을 갖고 마이크로 서비스 개발을 시작하자. 마이크로서비스는 일체형이어야 한다 : 하나의 소프트웨어 산출물로 시작 및 종료할 수 있는 서비스의 여러 인스턴스를 독립적으로 배포할 수 있어야 한다.마이크로서비스는 구성 가능 해야 한다 : 서비스 인스턴스가 시작하면 필요한 구성 정보를 한곳에서 읽어 오거나 환경 변수로 전달 받아야 한다. 서비스 구성 정보를 설정하는 데 사람 개입이 없어야 한다.마이크로서비스 인스턴스는 클라이언트에 투명해야 한다 : 클라이언트는 서비스의 정확한 .. 2024. 11. 11. Springboot 마이크로서비스 기본 개발 마이크로서비스를 구축함에 있어 개발자의 우선 고려 사항을 살펴본다. 서비스 엔드포인트를 노출하도록 엔드포인트 매핑용 스프링 부트 컨트롤러 클래스 구현타 언어 메시지를 적용할 수 있는 국제화 구현사용자가 서버와 상호 적용할 수 있도록 충분한 정보를 제공하는 스프링 HATEOAS 구현 마이크로서비스 출입구 만들기:스프링 부트 컨트롤러왜 마이크로서비스에 JSON을 사용하는가?여러 프로토콜을 사용하여 HTTP 기반 마이크로서비스 간 데이터를 통신할 수 있지만 JSON은 다음 몇 가지의 이유로 사실상 표준이 되었다. JSON은 가볍고 텍스토로 데이터 표현이 가능하다. 또한, 쉽게 읽고 사용할 수 있다.JSON은 자바스크립트에 사용되는 기본 직렬화 프로토콜이다. 프로그래밍 언어로 자바스크립트가 급격하게 성장하고 자.. 2024. 10. 17. 마이크로서비시 아키텍처 설계 소프트웨어 프로젝트에서 아키텍트의 역할은 해결해야 할 문제의 작동 모델(working model)을 제공하는 것이다. 아키텍트는 애플리케이션의 각 부분이 잘 조립될 수 있도록 개발자가 작성할 코드에 대한 뼈대를 제공한다. 마이크로서비스를 구축할 때 프로젝트의 아키텍트는 다음 세 가지 업무에 집중한다. 비즈니스 문제 분해서비스 세분화 확정서비스 인터페이스 정의 1. 비즈니스 문제 분해복잠함에 직면하면 대부분은 작업 중인 문제를 관리 가능한 덩어리로 쪼개려고 한다. 이렇게 하면 문제의 모든 세부 내용을 기억하지 않아도 되기 때문이다. 그들은 문제를 몇몇 필수적인 부분으로 나눈 후 이들 부분 사이에 존재하는 관계를 찾으려고 한다. 마이크로서비스 아키텍처에서도 이 과정은 매우 유사하다. 아키텍트는 비즈니스 문제.. 2024. 10. 14. 클라우드 네이티브 마이크로서비스 구축을 위한 12 팩터 앱 클라우드 네이티브 마이크로서비스를 만드는 어려움을 대처하고자 12 팩터 앱(twelve-factor app)이라는 헤로쿠(Heroku)의 모범 사례 지침을 확인한다. 12 팩터 앱을 사용하여 고품질의 클라우드 네이티브 애플리케이션을 구축할 수 있다. 이 방법 이론은 분산 서비스를 구축할 때 동적인 확장과 기본 사항에 관한 개발 및 설계 지침의 모음이다. 1. 코드베이스(codebase)마이크로서비스는 소스 제어 가능한 단일 코드베이스를 가진다. 또한 코드베이스에 서버 프로비저닝 정보를 버전 관리한다고 강조하는 것도 중요하다. 버전 관리는 한 파일 및 파일들의 변경 사항을 관리한다는 것을 기억하자. 코드베이스는 여러 배포 환경(개발, 테스팅, 스테이징, 운영 환경 등)을 포함할 수 있지만 다른 마이크로서.. 2024. 10. 10. 이전 1 2 다음