목차
1. 마이크로서비스란 무엇인가요? " >1. 마이크로서비스란 무엇인가요?
Java Java인터뷰 질문들 9가지 마이크로서비스 인터뷰 질문 중 몇 개에 답할 수 있나요?

9가지 마이크로서비스 인터뷰 질문 중 몇 개에 답할 수 있나요?

Aug 22, 2023 pm 03:46 PM
자바 면접 질문

현재 마이크로서비스는 Java 개발자에게 필요한 기술 중 하나입니다. 귀하가 업무에 실제로 마이크로서비스 아키텍처를 사용하는지 여부에 관계없이 면접관은 분명히 귀하에게 질문할 것이므로 Tian 형제는 귀하를 위해 마이크로서비스 인터뷰 질문 목록을 정리했습니다.

더 이상 고민하지 않고 바로 본론으로 들어가겠습니다.

1. 마이크로서비스란 무엇인가요?

단일 경량 서비스는 일반적으로 독립적인 마이크로서비스입니다. 예를 들어, 로그인 시스템은 사용자 로그인 기능의 구현에만 중점을 둡니다. 기본적으로 제공되며 독립적으로 실행할 수 있습니다. 마이크로서비스 아키텍처 시스템은 비즈니스에 따라 서비스 단위 모듈을 분할하고 단일 시스템의 단점을 해결하며 점점 더 복잡해지는 비즈니스 요구를 충족하는 분산 시스템입니다.

Martin Fowler: 현재 마이크로서비스 산업에 대한 통일된 표준 정의는 없습니다. 그러나 일반적으로 마이크로서비스 아키텍처는 단일 애플리케이션을 작은 서비스 세트로 나누는 것을 옹호하는 아키텍처 패턴 또는 아키텍처 스타일입니다. 각 서비스는 고유한 독립적인 프로세스로 실행되며, 서비스는 서로 협력하고 조정하여 사용자에게 궁극적인 가치를 제공합니다. 서비스 간 경량 통신을 사용합니다. 각 서비스는 특정 비즈니스를 중심으로 구축되었으며 프로덕션 환경에 독립적으로 배포될 수 있습니다. 또한, 통합되고 중앙화된 서비스 관리 메커니즘은 가능한 한 피해야 합니다.

일반인의 용어로:

마이크로서비스는 단일 책임을 갖는 독립적인 서비스 애플리케이션입니다. intellij idea 도구에는 maven을 사용하여 개발된 독립적인 모듈이 있습니다. 구체적으로는 단일 전문 비즈니스 로직을 처리하기 위해 springboot를 사용하여 개발된 작은 모듈입니다.

마이크로서비스는 서비스의 크기를 강조하고, 특정 지점에 초점을 맞추고, 구체적으로 특정 문제를 해결/해당 서비스 애플리케이션을 구현하는 것을 아이디어상 모듈이라고 볼 수 있습니다.

예를 들어 병원에 가면 치아가 불편하다고 느끼면 치과에 갑니다. 머리 아프면 뇌과로 가세요. 각 부서는 마이크로서비스이고 각 기능은 서비스입니다.

2. 마이크로서비스는 어떻게 독립적으로 통신하나요?

동기 통신: RPC 원격 프로시저 호출을 통한 dobbo, REST 인터페이스 json 호출을 통한 springcloud 등 비동기: RabbitMq, ActiveM, Kafka 등의 메시지 대기열

3. SpringCloud와 Dubbo의 차이점은 무엇인가요?

  • 우선, 모두 분산 관리 프레임워크입니다.

  • dubbo는 바이너리 전송으로 대역폭을 덜 차지합니다. SpringCloud는 약간 더 많은 대역폭을 갖는 http 전송을 사용합니다. 동시에 http 프로토콜을 사용하면 일반적으로 JSON 메시지를 사용하므로 더 많은 대역폭을 소비합니다.

  • Dubbo는 개발하기 어렵고, Dubbo가 사용하는 jar 패키지에는 많은 문제가 있습니다. 대형 프로젝트는 해결할 수 없습니다. SpringCloud의 타사 상속은 한 번의 클릭으로 생성되고 자연스럽게 통합될 수 있습니다.

  • SpringCloud 인터페이스 프로토콜 계약은 상대적으로 느슨합니다.
    무질서한 인터페이스 업그레이드를 제한하려면 강력한 관리 조치가 필요합니다

    .

  • 가장 큰 차이점:
    Spring Cloud는 Dubbo의 RPC 통신을 포기하고 HTTP 기반의 REST 방식을 채택합니다.

  • 엄밀히 말하면 이 두 가지 방법에는 각각의 장점과 단점이 있습니다. 후자는 서비스 호출 성능을 어느 정도 희생하지만 위에서 언급한 기본 RPC로 인해 발생하는 문제도 방지합니다. 게다가 REST는 RPC보다 유연하며, 서비스 제공자와 호출자는 계약에만 의존하며, 코드 수준에서 강한 종속성이 없습니다. 이는 빠른 진화를 강조하는 마이크로서비스 환경에 더 적합합니다.
9가지 마이크로서비스 인터뷰 질문 중 몇 개에 답할 수 있나요?
SpringCloud 및 Dubbo.png

4. SpringBoot와 SpringCloud의 관계?

  • SpringBoot: 단일 개별 마이크로서비스를 빠르고 편리하게 개발하는 데 중점(마이크로에 중점) SpringCloud: 전반적인 마이크로서비스 조정 및 거버넌스 프레임워크에 중점을 두고 SpringBoot에서 개발한 개별 마이크로서비스를 결합 및 관리합니다. 매크로);

  • SpringBoot는 SpringCloud 없이도 독립적으로 사용할 수 있지만, SpringCloud는 종속 관계인 SpringBoot 없이는 사용할 수 없습니다.

5. 차단기란? 서비스 다운그레이드란 무엇인가요?

  • 서비스 차단기의 기능은 우리 집의 퓨즈와 유사합니다. 서비스가 불가능하거나 응답 시간이 초과되면 전체 시스템의 사태를 방지하기 위해 서비스 호출이 일시적으로 중단됩니다.

  • 서비스 저하는 전체 시스템의 부하 상황을 기준으로 부하가 상대적으로 높은 특정 상황의 경우 특정 기능(비즈니스 시나리오)이 과부하되거나 느리게 응답하는 것을 방지하기 위해 내부적으로 일시적으로 요청을 포기합니다. 일부 비핵심 인터페이스 및 데이터를 포함하고 미리 준비된 폴백 오류 처리 정보를 직접 반환합니다. 이런 방식으로 손실이 있는 서비스를 제공하더라도 전체 시스템의 안정성과 가용성이 보장됩니다.

6. 마이크로서비스의 장점과 단점은 무엇인가요? 프로젝트를 진행하면서 겪었던 어려움에 대해 알려주세요.

  • 장점: 느슨한 결합, 단일 비즈니스 기능에 중점을 두고 개발 언어와 무관하며 팀 규모가 줄어듭니다. 개발 중에는 비즈니스에 대해 많이 알 필요가 없으며 편리하고 중앙 집중화된 현재 기능에만 집중하고 기능은 작고 세련됩니다. 마이크로서비스의 한 기능이 손상되더라도 다른 기능에 큰 영향을 미치지 않으며 문제를 빠르게 찾을 수 있습니다. 마이크로서비스는 현재 비즈니스 로직 코드에만 중점을 두고 HTML, CSS 또는 기타 인터페이스와 혼합되지 않습니다. 기술과 유연하게 조화를 이룰 수 있으며 독립적인 것이 더 편안합니다.

  • 단점: 서비스 수가 증가함에 따라 관리가 복잡하고 배포가 복잡하며 서버 요구 사항이 증가하고 서비스 통신 및 통화 압력이 증가하며 운영 및 유지 관리 엔지니어의 압력이 증가하고 인적 자원이 증가하며 시스템 종속성이 증가하고 데이터 일관성 향상, 성능 모니터링.

7. 유레카와 사육사의 차이점은 무엇인가요?

zookeeper는 CP 원칙, 강한 일관성 및 파티션 내결함성을 갖추고 있습니다. 유레카는 가용성 및 파티션 허용 오차라는 AP 원칙입니다. ZooKeeper 마스터 노드에 장애가 발생하면 ZooKeeper는 나머지 노드에서 마스터 노드를 다시 선택하는데 시간이 너무 오래 걸리므로 결국 복원할 수는 있지만 마스터 노드를 선택하는 동안에는 서비스를 사용할 수 없게 됩니다. 유레카의 모든 노드는 동일합니다. 한 노드가 중단되더라도 다른 노드는 여전히 정상적인 서비스를 유지합니다.

8. 마이크로서비스에 대해 어떤 기술 스택을 알고 있나요? 하나 또는 두 개를 나열하십시오.Ar chaius, Ali's Dlamond 등

서비스 등록 및 검색Eurka, Consul, Zookeeper, etc.Service callRest(서비스 통신), RPC(Dubbo), GRpc
서비스 회로 차단기 Hystrix, Envoy 등
로드 밸런싱 Nginx, Ribbon 등
서비스 인터페이스 호출(클라이언트 단순화 도구) Fegin 등
메시지 queue Kafka, RabbitMQ, ActiveMQ 등
서비스 구성 센터 관리 SpringCloudConfig, Chef 등
서비스 라우팅(API 게이트웨이) Zuul 등
서비스 모니터링 Zabbix, Nagios, Metrics, Spectator 등
전체 링크 추적 Zipkin, Brave, Dapper 등
서비스 배포 Docker, OpenStack, Kubernetes 등
데이터 흐름 운영 개발 키트 SpringCloud Stream(Redis, Rabbit으로 캡슐화됨) , kafka 등 메시지 주고받기)
이벤트 메시지 버스 봄구름 버스

9. 마이크로서비스 아키텍처란?

앞서 마이크로서비스가 무엇인지 이해했다면 기본적으로 마이크로서비스 아키텍처도 이미 이해하고 있는 것입니다.

마이크로서비스 아키텍처는 마이크로서비스를 관리, 통합, 적용하는 것입니다. 마이크로서비스 아키텍처는 마이크로서비스에 의존하며 마이크로서비스를 기반으로 합니다.

예: 위에 나열된 마이크로서비스란 무엇입니까? 병원에서 각 부서는 독립적인 마이크로서비스이므로 병원장은 원장이 다음 부서를 관리할 수 있는 것처럼 대규모 마이크로서비스 아키텍처입니다. 마이크로서비스 아키텍처는 주로 이 기능을 가지고 있습니다.

위 내용은 9가지 마이크로서비스 인터뷰 질문 중 몇 개에 답할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

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

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

인터뷰어: Spring Aop 공통 주석 및 실행 순서 인터뷰어: Spring Aop 공통 주석 및 실행 순서 Aug 15, 2023 pm 04:32 PM

Spring을 알아야 하므로 Aop의 모든 알림 순서에 대해 이야기해 보겠습니다. Spring Boot 또는 Spring Boot 2는 Aop의 실행 순서에 어떤 영향을 줍니까? AOP에서 직면한 함정에 대해 알려주십시오.

특정 그룹과의 인터뷰: 온라인에서 OOM을 발견하면 어떻게 문제를 해결해야 합니까? 어떻게 해결하나요? 어떤 옵션이 있나요? 특정 그룹과의 인터뷰: 온라인에서 OOM을 발견하면 어떻게 문제를 해결해야 합니까? 어떻게 해결하나요? 어떤 옵션이 있나요? Aug 23, 2023 pm 02:34 PM

OOM은 코드나 JVM 매개변수 구성으로 인해 프로그램에 취약점이 있음을 의미합니다. 이 기사에서는 Java 프로세스가 OOM을 트리거할 때 문제를 해결하는 방법에 대해 독자에게 설명합니다.

초보자도 BAT 면접관과 경쟁할 수 있습니다: CAS 초보자도 BAT 면접관과 경쟁할 수 있습니다: CAS Aug 24, 2023 pm 03:09 PM

자바 동시 프로그래밍 시리즈의 추가 챕터인 C A S(비교 및 교환)는 여전히 이해하기 쉬운 스타일로 그림과 텍스트를 포함해 독자들이 면접관과 열띤 대화를 나눌 수 있도록 해준다.

지난주에 XX보험 인터뷰했는데 멋있었어요! ! ! 지난주에 XX보험 인터뷰했는데 멋있었어요! ! ! Aug 25, 2023 pm 03:44 PM

지난 주에 그룹의 한 친구가 Ping An Insurance와 인터뷰를 하러 갔습니다. 결과는 다소 아쉽지만, 말씀하신 것처럼 기본적으로 모든 질문에 낙담하지 않기를 바랍니다. 면접 질문을 외워야 면접이 해결될 수 있으니, 열심히 해주세요!

Ele.me의 필기 시험 문제는 간단해 보이지만 많은 사람들을 당황하게 합니다. Ele.me의 필기 시험 문제는 간단해 보이지만 많은 사람들을 당황하게 합니다. Aug 24, 2023 pm 03:29 PM

많은 회사의 필기 시험 문제를 과소평가하지 마십시오. 함정이 있으며 우연히 함정에 빠질 수 있습니다. 이런 주기에 관한 필기시험 문제를 접하게 된다면 차분하게 생각하고 차근차근 풀어나가시길 권합니다.

5개의 문자열 면접 질문, 10% 미만의 사람들이 모두 올바르게 답할 수 있습니다! (답변 포함) 5개의 문자열 면접 질문, 10% 미만의 사람들이 모두 올바르게 답할 수 있습니다! (답변 포함) Aug 23, 2023 pm 02:49 PM

​이 기사에서는 Java String 클래스에 관한 5가지 면접 질문을 살펴보겠습니다. 저는 인터뷰 과정에서 이 5가지 질문 중 몇 가지를 직접 경험했습니다. 이 기사는 이러한 질문에 대한 답변이 왜 이런지 이해하는 데 도움이 될 것입니다.

100개의 Linux 인터뷰 질문과 답변을 수집하는 것이 좋습니다 100개의 Linux 인터뷰 질문과 답변을 수집하는 것이 좋습니다 Aug 23, 2023 pm 02:37 PM

이 기사에는 Linux 개요, 디스크, 디렉토리, 파일, 보안, 구문 수준, 실제 전투, 파일 관리 명령, 문서 편집 명령, 디스크 관리 명령, 네트워크 통신 명령, 시스템 관리 명령, 백업을 다루는 총 30,000 단어가 넘습니다. 압축 명령 등 Linux 지식 포인트 해체.

메이투안, 대답할 수 있는지 볼까? 메이투안, 대답할 수 있는지 볼까? Aug 24, 2023 pm 03:51 PM

메이투안, 대답할 수 있는지 볼까?

See all articles