springcloud의 5가지 주요 구성 요소는 다음과 같습니다. 1. AWS 지역에서 실행되는 중간 계층 서비스를 찾는 데 사용되는 RESTful 서비스인 Eureka 2. HTTP 및 TCP 기반 클라이언트 로드 밸런싱 도구인 Ribbon 3. Hystrix 애플리케이션이 작업을 여러 번 수행하려고 시도하는 것을 방지합니다. 4. API 게이트웨이, 라우팅, 로드 밸런싱 등과 같은 여러 기능을 갖춘 Zuul 5. 서버 및 클라이언트를 제공하는 구성.
springcloud의 5가지 주요 구성 요소는 무엇인가요?
1. Eureka
역할: 서비스 거버넌스(서비스 등록 및 검색)를 구현합니다.
AWS 지역에서 실행되는 중간 계층 서비스를 찾는 데 사용되는 RESTful 서비스입니다. 이는 유레카 서버와 유레카 클라이언트의 두 가지 구성 요소로 구성됩니다. 유레카 서버는 서비스 등록 서버로 사용됩니다. Eureka 클라이언트는 서버와의 상호 작용을 단순화하고, 폴링 로드 밸런서 역할을 하며, 서비스에 대한 장애 조치 지원을 제공하는 데 사용되는 Java 클라이언트입니다. Netflix는 프로덕션 환경에서 트래픽, 리소스 활용도 및 오류 상태를 기반으로 가중치가 부여된 로드 밸런싱을 제공하는 별도의 클라이언트를 사용합니다.
애플리케이션이 시작되면 Eureka 클라이언트는 자체 서비스 정보를 서버에 등록하고 서버의 서비스 정보를 로컬로 캐시합니다. 클라이언트는 정기적으로 서버와 하트비트 상호 작용을 수행하여 서비스 임대 및 서비스 정보를 업데이트합니다.
2. 리본
기능: 주로 클라이언트 측 소프트웨어 로드 밸런싱 알고리즘을 제공합니다.
Spring Cloud Ribbon은 HTTP 및 TCP 기반의 클라이언트 측 로드 밸런싱 도구로 Netflix Ribbon을 기반으로 구현됩니다. Spring Cloud의 캡슐화를 통해 서비스 지향 REST 템플릿 요청을 클라이언트 측 로드 밸런싱 서비스 호출로 자동으로 쉽게 변환할 수 있습니다. 리본 클라이언트 구성 요소는 연결 시간 초과, 재시도, 재시도 알고리즘 등과 같은 일련의 전체 구성 옵션을 제공합니다. 리본에는 플러그형 및 사용자 정의 가능한 로드 밸런싱 구성 요소가 내장되어 있습니다.
3. Hystrix
서킷 브레이커는 애플리케이션이 실패할 가능성이 있는 작업을 수행하기 위해 여러 번 시도하는 것을 방지하여 오류가 지속된다고 판단하는 동안 오류를 복구하거나 CPU 사이클을 낭비하지 않고 계속할 수 있도록 합니다. . 또한 회로 차단기 모드를 사용하면 애플리케이션에서 오류가 해결되었는지 여부를 감지할 수 있습니다. 문제가 해결된 것으로 나타나면 애플리케이션은 작업 호출을 시도할 수 있습니다.
고가용성을 보장하기 위해 개별 서비스는 일반적으로 클러스터에 배포됩니다. 네트워크상의 문제나 자체적인 이유로 서비스가 100% 가용성을 보장할 수는 없습니다. 단일 서비스에 문제가 있는 경우, 이 서비스 호출 시 스레드 차단이 발생하게 됩니다. 서블릿 컨테이너의 스레드 리소스가 소모되어 서비스 마비가 발생합니다. 서비스 간의 종속성으로 인해 오류가 전파되고 전체 마이크로서비스 시스템에 치명적인 결과를 초래하게 됩니다. 이는 서비스 오류의 "눈사태" 효과입니다.
4. Zuul
기능: API 게이트웨이, 라우팅, 로드 밸런싱 등과 같은 여러 기능이 있습니다.
nginx와 유사하며 역방향 프록시 기능이 있지만 Netflix 자체에서 다른 구성 요소와 협력하기 위해 몇 가지 기능을 추가했습니다. 마이크로서비스 아키텍처에서 백엔드 서비스는 호출 측에 직접 공개되지 않는 경우가 많지만, 요청된 URL을 기반으로 API 게이트웨이를 통해 해당 서비스로 라우팅됩니다. API 게이트웨이가 추가되면 제3자 호출자와 서비스 제공자 사이에 벽이 생성됩니다. 이 벽은 권한 제어를 위해 호출자와 직접 통신한 후 요청을 균형있게 백엔드 서버에 분산시킵니다.
5.Config
기능: 구성 관리.
SpringCloud Config는 서버 측과 클라이언트 측을 제공합니다. 서버 스토리지 백엔드의 기본 구현은 git을 사용하므로 태그가 지정된 구성 환경 버전을 쉽게 지원할 뿐만 아니라 콘텐츠 관리를 위한 다양한 도구에 대한 액세스도 제공합니다. 이는 여전히 정적이며 동적 구성 업데이트를 달성하려면 Spring Cloud Bus와 조정되어야 합니다.
스프링클라우드란?
Spring Cloud는 일련의 프레임워크를 순서대로 모아 놓은 것입니다. Spring Boot의 개발 편의성을 사용하여 서비스 검색 등록, 구성 센터, 메시지 버스, 로드 밸런싱, 회로 차단기, 데이터 모니터링 등과 같은 분산 시스템 인프라의 개발을 영리하게 단순화합니다. Spring Boot 개발 스타일. 원클릭 시작 및 배포. Spring Cloud는 바퀴를 재발명하지 않고 실제 테스트를 견딜 수 있는 다양한 회사에서 개발한 비교적 성숙한 서비스 프레임워크를 결합하고 이를 Spring Boot 스타일로 다시 캡슐화하여 복잡한 구성 및 구현 원칙을 보호하고 최종적으로 개발자에게 제공합니다. 이해하기 쉽고, 배포하기 쉽고, 유지 관리하기 쉬운 분산 시스템 개발 툴킷 세트를 만들었습니다.
위 내용은 Springcloud의 5가지 주요 구성 요소는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!