더보+조키퍼 기본 설명
dubbo의 본질: Jar 패키지, 분산 프레임워크, 원격 서비스 호출을 위한 분산 프레임워크.
1. 더보란?
1) 초보자를 위한 튜토리얼이기 때문에 분산 및 원격 서비스 호출이 무엇인지, 왜 분산 호출이 필요한지, 원격 호출이 필요한 이유를 이해하지 못하는 학생들이 많을 것입니다. 설명을 위해 간단히 비교표를 그려보겠습니다(그림 2의 그림 1 참조. 화판에 그린 것이므로 뿌리지 마십시오).
생각해보면 예전에는 모든 것이 같은 서버에 있었고 호출 방식도 직접적이고 자연스럽게 호출되어 문제가 없었습니다. 이제 수요 증가로 인해 많은 수가 분할되어 다른 서버에 배포되었습니다. 이전에 비해 모두 하나의 서버에 분산되었으므로 서비스 계층 서비스를 호출하는 웹 계층이 있습니까? 원격 통화가 되나요? 그렇다면 이전과 동일한 서버에서 어떻게 자연스럽게 메소드를 호출할 수 있을까요? dubbo가 해결해 드립니다. 아래는 더보의 장점입니다.
2. 더보의 장점은 무엇인가요?
1. 로컬 메서드 호출과 마찬가지로 투명한 원격 메서드 호출에는 간단한 구성이 필요하며 API 침입이 필요하지 않습니다.
2. 소프트 로드 밸런싱 및 내결함성 메커니즘은 인트라넷의 F5와 같은 하드웨어 로드 밸런서를 대체하여 비용과 단일 포인트를 줄일 수 있습니다.
3. 자동 서비스 등록 및 검색은 더 이상 서비스 제공자 주소를 하드 코딩할 필요가 없습니다. 등록 센터는 인터페이스 이름을 기반으로 서비스 제공자의 IP 주소를 쿼리하고 서비스 제공자를 원활하게 추가하거나 삭제할 수 있습니다. (아래에 설명됨)
Dubbo는 애플리케이션에 투명하게 액세스하기 위해 전체 Spring 구성 방법을 사용합니다. Spring의 스키마 확장을 기반으로 Dubbo의 구성을 로드하려면 Spring만 사용하면 됩니다.
3. Dubbo의 아키텍처 다이어그램은 다음과 같습니다.
그의 아키텍처 다이어그램을 설명하기 전에 몇 가지 개념을 대중화해 보겠습니다.
노드 역할 설명:
공급자(생산자): 서비스를 노출하는 서비스 공급자.
Consumer: 원격 서비스를 호출하는 서비스 소비자입니다.
그림에 표시된 것처럼 web1234는 service1234의 서비스를 호출해야 하므로 web1234가 소비자이고 service1234가 생산자라는 것을 간단히 이해할 수 있습니다.
그러면 위의 내용에 따라 소비자가 생산자의 서비스를 호출하면 다음 그림과 같이 나오나요?
보면 어지러우신가요? 희미한가 아닌가? 희미한가 아닌가? 암튼 어지러웠는데, 좀 더 퍼트리면 어떡하지? , 그래서 우리는 그가 필요합니다:
Registry(등록 센터): 서비스 등록 및 검색을 위한 등록 센터입니다. Dubbo는 사육사를 추천합니다. 사육사는 무엇입니까? Zookeeper는 분산 시스템의 일관성 처리를 위한 프레임워크입니다. 자세한 내용은 이전 기사를 참조하세요. 이렇게 표현하면 ZooKeeper는 실제로 프레임워크이며 일관성 처리에 사용됩니다. 쉽게 말하면, ZooKeeper는 부동산 판매자(생산자)가 부동산 정보를 중개자(등록센터)에 올려주고, 부동산을 사고자 하는 사람(소비자)이 중개자로 가서 부동산 자원 목록을 얻는 것입니다. 그래서 우리의 그림은 다음과 같습니다:
훨씬 낫지 않나요? 부족하다면 모니터링 센터도 필요합니다. (무엇을 위해 사용하나요? 물론 모니터링을 위한 것입니다. 통화가 실패하면 어떻게 해야 하나요? 끊기면 어떻게 해야 하나요?): 모니터: 중요한 모니터링 센터 통화 횟수 및 서비스 통화 시간. (더 이상 그리지 않음)
그런 다음 Provider가 컨테이너에서 실행되는데, 이를 컨테이너 서비스라고 하며 컨테이너를 실행합니다. (더 이상 그리지 않음)
그림과 같은 최종 더보 아키텍처(0부터 시작):
관련 권장 사항:
Taobao Amoeba 아키텍처 MySQL 분산 데이터베이스 환경_MySQL
하루 평균 100개 WanPV 아키텍처의 네 번째 버전(분산 모니터링)_MySQL
위 내용은 더보+조키퍼 기본 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











이 글에서는 dubbo+nacos+Spring Boot의 실제 개발에 대해 이야기하기 위해 자세한 예제를 작성하겠습니다. 이 기사에서는 이론적 지식을 너무 많이 다루지는 않지만 dubbo를 nacos와 통합하여 개발 환경을 신속하게 구축하는 방법을 설명하는 가장 간단한 예를 작성합니다.

몇 마디로 시작하겠습니다. 저는 걸을 때 가끔 한 가지 질문에 대해 오랫동안 생각하다가 납득할 수 있을 때까지 끝나지 않는 경우가 많습니다. 질문의 모든 점에 대해 나 자신입니다. 그래서 나는 이러한 생각들을 기록하여 새로운 시리즈로 활용할 수 있는 기사를 만들고 싶습니다. 이 기사에서는 코드를 볼 수 없을 수도 있지만 쉽게 간과되는 몇 가지 문제와 문제의 더 깊은 "이유"를 엿볼 수 있습니다. 오늘은 첫 번째 글, 왜 Dubbo를 Go로 다시 작성해야 할까요? Alibaba에서 탄생하여 2011년에 오픈 소스로 출시된 Dubbo가 10년의 세월을 거쳤습니다. 2019년에 Go로 다시 작성되어 오픈소스화되었으며, 이제 2년이 지나서 원래 V1.0.0 버전에서 V3.0.0으로 개발되었습니다.

서문 Dubbo를 소개하기 전에 먼저 기본 개념을 이해하겠습니다. Dubbo는 RPC 프레임워크입니다. RPC는 원격 프로시저 호출(Remote Procedure Call)이며, 그 반대는 단일 애플리케이션 아키텍처와 분산 아키텍처 이전의 수직 애플리케이션 아키텍처에서 사용됩니다. . 모두 로컬 프로시저 호출입니다. 이를 통해 프로그래머는 원격 호출의 세부 사항을 명시적으로 코딩하지 않고도 프로그램이 다른 주소 공간(일반적으로 네트워크에서 공유되는 다른 시스템)의 프로시저나 함수를 호출할 수 있습니다. 분산 아키텍처 애플리케이션 간의 원격 호출에는 원격 호출을 로컬 호출만큼 간단하게 만들기 위한 RPC 프레임워크가 필요합니다. Dubbo 프레임워크에는 원격 서비스를 호출하는 다음 구성요소인 Consumer가 있습니다.

이미 Dubbo를 능숙하게 사용하고 계신다면 이 글은 적합하지 않지만, Dubbo를 이해하고 Dubbo를 배우고 싶다면 매우 적합할 것입니다.

소개 Dubbo는 Alibaba가 오픈소스로 제공하는 고성능, 우수한 서비스 프레임워크로, 애플리케이션이 고성능 RPC를 통해 서비스 출력 및 입력 기능을 실현할 수 있도록 하며 Spring 프레임워크와 원활하게 통합될 수 있습니다. 인터페이스 지향 원격 메소드 호출, 지능형 내결함성 및 로드 밸런싱, 자동 서비스 등록 및 검색이라는 세 가지 핵심 기능을 제공합니다. 개요 2020년 6월 23일, ApacheDubbo는 ApacheDubbo 원격 코드 실행에 대한 위험 공지를 공식적으로 발표했습니다. 취약점 번호는 CVE-2020-1948이며 취약점 수준은 높음입니다. ApacheDubbo는 고성능 경량 오픈 소스 JavaRPC 프레임워크로 인터페이스 지향 원격이라는 세 가지 핵심 기능을 제공합니다.

SPI는 어디에 사용되나요? 예를 들어, 이제 우리는 "슈퍼로거"라는 새로운 로깅 프레임워크를 설계했습니다. 기본적으로 XML 파일은 로그의 구성 파일로 사용되며 구성 파일 구문 분석을 위한 인터페이스가 설계되었습니다. packagecom.github.kongwu.spisamples; publicinterfaceSuperLoggerConfiguration{voidconfigure(StringconfigFile);} 그런 다음 기본 XML 구현이 있습니다. .github .kongwu.spisamples;publiccl

Dubbo 원칙 및 메커니즘 설명: 1. 핵심 구성 요소 3. 클러스터 오류 허용 5. 로드 밸런싱 및 라우팅 7. 모니터링 , 확장성 9. 보안 10. Spring과의 통합 11. 다른 기술과의 통합. 자세한 소개: 1. 등록 센터, 모니터링 센터, 서비스 소비자 및 서비스 제공자를 포함한 핵심 구성 요소 Dubbo는 네트워크 통신 프레임워크를 사용하여 다양한 장기 연결을 제공합니다.

독자 여러분, 오늘은 Dubbo의 Go 언어에 대한 기사를 제공하겠습니다. 뛰어난 분산 서비스 프레임워크인 Dubbo는 Java 언어에서 널리 사용되고 지원되었습니다. 최근 몇 년간 Go 언어의 급속한 발전으로 인해 많은 개발자들은 Dubbo가 이미 Go 언어를 지원하는지에 대해 깊은 관심을 가지게 되었습니다. 이 기사에서는 Go 언어에 대한 Dubbo의 지원, 특정 구현 방법 및 코드 예제에 대해 자세히 설명합니다.
