강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Back-end

障害のないサービスを作成するための Resilience4j - CircuitBreaker

障害のないサービスを作成するためのCircuitBreakerを導入する方法について簡単かつ迅速にお知らせします。

  • foo
3시간 만에 완강할 수 있는 강의 ⏰
resilience4j
Spring Boot
circuit-breaker
MSA

学習した受講者のレビュー

こんなことが学べます

  • 障害のないサービスを作成するためのCircuitBreakerの概念

  • Resilience4jでCircuitBreakerをすばやく適用

障害があっても安定したサービス作り!
簡単に学ぶサーキットブレーカーのA to Z💡

信頼できるサービスを作成する CircuitBreaker

ITサービス企業では、どのように障害状況にも感じられないほど安定的にサービスを運営するのでしょうか。 Resilience4jでサーキットブレーカーを簡単かつ迅速にプロジェクトに適用する方法を学びます。

迅速で簡単なサーキットブレーカーの導入

特定のサーバーにトラフィックが集中しているときにサービス全体に影響を与えないように設定する方法を心配している人

MSA (Micro-Service Architecture)でサービスを構成したが、一部のサービスの障害だけでもサービス全体が死んでしまう状況を解決したい方

サーキットブレーカーという概念が何なのかおおよそ知っているが、どのように始めるべきか分からない方

障害に強いサービスを作るための基本機であるサーキットブレーカー(Circuit Breaker)の概念を身につけることができる講義です。 「私たちのサービスにトラフィックが集中しているサーバーはしばしば遅すぎますが、このような状況でサービス全体に影響を与えないように設定するにはどうすればよいですか?することを悩んだことがありませんか?

あなたのサービスにサーキットブレーカーを導入することで、この問題を簡単に解決できます。トラフィックが集中しているサービスにサーキットブレーカーをかけてトラフィックを効果的に制御し、サービスを確実に維持する方法についてお知らせします!


わかりやすい学習のために
丁寧に構成しました。

サーキットブレーカーを初めて聴いている人なら、複雑に感じられるサーキットブレーカーの状態変化過程を簡単に理解できるように、段階的に図とともに説明しました。

Resilience4jというライブラリに慣れやすいように、はるかに簡単なRetryの適用方法から始めてCircuitBreakerに進むように徐々に構成しました。

Resilience4jの公式ドキュメントとデモプロジェクトは非常に不親切で、私のプロジェクトに適用するのは難しいです。このレッスンでは、サービスにすぐにサーキットブレーカーを適用できるようにするための重要な内容のみを説明しました。

理論6:実習4の比重で、実務でのサーキットブレーカーの導入に焦点を当てました。 Webアプリケーションをいくつか作成した経験があれば、難しくないように学習できます。


講義で学ぶ内容

サービスを運営してみると、サービス内部で呼び出している他のサービスやデータベースなどの要素に問題が生じたり、大きすぎる負荷を受けて一時的に使用できない状態になったりします。バックエンドの開発者であれば、このような一部のサービスの失敗がサービス全体の失敗につながる状況を避けたいですか?この問題をサーキットブレーカーで解決できます。

サービス運用でトラフィックが問題になる場合は、通常より短い時間に爆発的なトラフィックが集中する場合です。イベントを進行してトラフィックが集中する可能性があり、誰かが攻撃してトラフィックが急上昇する可能性があります。このようにトラフィックが集まると、サービスはしばしば死んでしまいます。だからといって、このようなトラフィックが集中する時点に合わせてインフラを整えておくことは、普段は不必要に多くの費用を使うようにします。

しかし、このようなトラフィックにもサーキットブレーカーを活用すれば、低リソースだけを使用しながらもトラフィックにサービスが死ぬことなく開発者に対応する時間を与えることができます。トラフィックによる問題がサービス全体に広がるのも防ぐことができます。

サーキットブレーカーはこの3つの状態に入り、トラフィックを制御します。 CLOSE、OPEN、HALF_OPENこの3つの状態がそれぞれ何を意味するのか説明を書き留めましたが、まだよくわかりませんか?講義を聞くと、それぞれの状態がどのような状態であり、サーキットブレーカーがこの3つの状態をどのように来て行き、サービスを安定的に運営するのに役立つかが分かるはずです。

サーキットブレーカーの概念的な説明だけでなく、どの設定を指定できるかをお知らせします。 Resilience4jを使用してサーキットブレーカーにどのような設定ができるかを調べ、サービスに適した設定を見つけてください。下の図は、サーキットブレーカーの重要な概念の1つである「スライドウィンドウ」の内容です。

Resilience4j導入の試行錯誤を少なくできるように!

こんにちは。講義とメンタリングをしているフー(Foo)といいます。

約2年前、偶然のきっかけとしてResilience4jを使用することになりました。当時、Resilience4jを通じてサーキットブレーカーを適用しようとしましたが、サーキットブレーカーという概念自体も初めてであり、公式ドキュメントとデモプロジェクトが親切ではなく、プロジェクトに適用するのに大きな困難を経験した記憶がありました。その時苦しんだ困難をどうすれば他の人が経験しないようにできるかという考えで今回の講義を作りました。多くの人がResilience4jを導入するのに役立つことを願っています😄


Q&A 💬

Q.なぜResilience4jとサーキットブレーカーを知る必要がありますか?

Resilience4jとサーキットブレーカーを知る必要があるのは、システムの安定性と可用性を確保する上で重要な役割を果たすことです。現在サービスされている多くのアプリケーションは、さまざまな外部サービスとの連携を必要とし、外部サービスの障害や遅延によってシステム全体のパフォーマンスが低下する可能性があります。 Resilience4jとサーキットブレーカーは、この状況に備えてアプリケーションを堅牢にし、アプリケーションが障害から回復するのに役立ちます。

Q. Resilience4jとサーキットブレーカーについてどの程度のレベルをカバーしていますか?

レッスンでは、Resilience4jというライブラリを使用してサーキットブレーカーをすばやく適用する方法について説明します。サーキットブレーカーの概念から依存関係を追加し、コードに適用し、どのような状況にサーキットブレーカーを効果的に適用できるかについて説明します。また、サーキットブレーカーを適切に活用するために、サーキットブレーカーの主な設定や、Actuatorを活用したサーキットブレーカーの制御方法まで取り上げています。

Q. どの程度レベルの学習者が聞ける講義ですか?

このレッスンはResilience4jとサーキットブレーカーの基本的な概念から始まります。そのため、プログラミング経験やバックエンド開発の知識を持っていますが、Resilience4jの事前知識を持っていない初心者も受講できます。また、サーキットブレーカーの概念は簡単に知っていますが、私のサービスにすばやくコードで適用してみたい方も受講するのに適しています。

💾受講前に確認してください

  • 講義は、Windows OS、IntelliJ IDEA Communityに基づいて記録されました。
  • 練習に使用されるサンプルコードはFitHubを介して提供されています。
  • 1つのAPIサーバーでデータベースだけでなく、別のAPIサーバーを呼び出すこともできることを知っている人なら、適切なレベルで受講できると思います。
  • PPTによる概念の説明を確認し、インテリジェイでの実践の進行に従うと内容を理解することをお勧めします。 (概念自体を理解することがより重要なので、授業映像だけずっと見ても構いません。)
  • 今後登場する質問のうち必要とされる内容は、「付録」セクションに映像を追加する予定です。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • 一部のサービスに障害が発生した場合でも、ユーザーが障害を感じない安定したサービスを実装したい方

  • CircuitBreakerを適用するのが良いと思われるという話は聞きましたが、どのように始めるべきかを理解できない人

こんにちは
です。

5,279

受講生

229

受講レビュー

105

回答

4.9

講座評価

9

講座

안녕하세요.

멘토링을 하면서 주니어 개발자들이 어려워 하는 개념들에 대해 어떻게 하면 쉽게 전달할 수 있을지에 대해서 많은 고민을 하고 있는 푸(Foo)라고 합니다.

잘 부탁 드리겠습니다.


이력

  • 2019. 08 ~ 현재 : 카카오 자바 백엔드 개발자

  • 2021. 08 ~ 현재 : programmers 백엔드 데브코스 멘토

  • 2021. 12 ~ 현재 : F-Lab 자바 백엔드 멘토

 

  • 이것이 취업을 위한 백엔드 개발이다 with 자바(링크)

 

기타 이력 및 타 플랫폼 강의들은 아래 GitHub 링크에서 확인할 수 있습니다.

GitHub - https://github.com/lleellee0

カリキュラム

全体

19件 ∙ (2時間 36分)

講座掲載日: 
最終更新日: 

受講レビュー

全体

27件

4.9

27件の受講レビュー

  • 김찬님의 프로필 이미지
    김찬

    受講レビュー 1

    平均評価 5.0

    5

    100% 受講後に作成

    - 줄 수 있는 별점 최대 개수가 5개인게 너무 아쉬울 따름. - 강사님이 말하는 문장들의 구조가 대부분 완벽함. 많은 인강들을 들어본 결과, 주어 동사 목적어 등의 문장 구조가 난잡하여서 설명하는 문장들을 이해하기 위해 추가적인 에너지가 필요한 강의가 많음. 하지만 이 강의는 그냥 듣는대로 바로바로 이해가 됨. - 설명하는 호흡이 짧고 간결하고 담백하여 술술 들리고 술술 이해됨. - 수강생 친화적인 강의. 수강생들이 학습하면서 헷갈릴 만한 부분을 미리 예측하여 언급함. 더욱 신경써서 이해해야 하는 부분을 미리 점지해주는 효과. ex) circuit breaker의 OPEN이라는 개념이 긍정적인 의미가 아닌 부정적인 의미로 사용된다는 것을 강조해줌. *총평* Foo님의 새로운 강의가 빨리 나왔으면 좋겠다.

    • 이준형(Foo)
      知識共有者

      헛 김찬님 디테일한 칭찬 감사합니다. 감동이네요 ㅎㅎㅎㅎ 긍정적인 측면에서 좋은 피드백 많이 남겨주셔서 큰 힘이 됐습니다~ 잘 수강해주셔서 정말 감사드리고, 강의 내용이 김찬님께 도움이 됐으면 좋겠네요! 강의는 12월중으로 성능 테스트 강의가 업로드될 예정입니다. 이 강의나 다른 강의도 수강하시고 긍정적인 피드백도 좋고, 이런건 개선됐으면 좋겠다고 생각하는 점도 이야기 해주시면 강의에 반영해보겠습니다. (_ _) 그리고 이런 부분은 보충 설명이 필요하다고 생각하시는 부분도 있으면 이야기 해주세요! 앞으로도 좋은 강의로 찾아뵙겠습니다. 감사합니다.

  • 보키님의 프로필 이미지
    보키

    受講レビュー 48

    平均評価 5.0

    5

    100% 受講後に作成

    푸님 101부터 시작해서 프로그래머스도 따라왔고 이제 인프런까지와서 강의 잘 듣고 있습니다 앞으로도 꿀강의 많이 만들어주세요~!! 건강하시구요 감사합니다

    • 이준형(Foo)
      知識共有者

      보키님 수강평 남겨주셔서 감사합니다~~ 이전 강의들도 많이 들어주셨군요ㅎㅎ 말씀해주신대로 건강 챙겨서 도움될만한 강의 많이 만들어보겠습니다!

  • yosongsong님의 프로필 이미지
    yosongsong

    受講レビュー 4

    平均評価 5.0

    5

    100% 受講後に作成

    우연한 계기로 resilience4j에 관한 정보를 알게 되었습니다. 덕분에 회복탄력성에 관해 알게 됐습니다. 난이도는 중급이상이라고 되어있지만, 기초적인 개념부터 설명해주셔서 하나도 어렵지 않고 바로 적용할 수 있다는 생각이 들었습니다. 아직 취준생이지만 추후 커리어에 도움이 될거 같습니다~ 잘들었습니다!

    • 이준형(Foo)
      知識共有者

      yosongsong님 소중한 수강평 감사합니다. 취업 준비로 힘드시겠지만 힘내셔서 취업 꼭 성공하셨으면 좋겠네요! 혹시라도 질문 있으시면 나중에라도 질문 남겨주세요.

  • daonplace님의 프로필 이미지
    daonplace

    受講レビュー 2

    平均評価 4.5

    5

    100% 受講後に作成

    foo님 안녕하세요 현재 진행하는 프로젝트에서 서킷 브레이커를 적용해야하는데 처음에는 팀에서 Hystrix를 도입하자는 얘기가 나왔습니다. 강의 영상에서와 같이 Hystrix의 유지보수만 되고 있는 프로젝트여서 팀에게 이러한 내용을 공유하고 Resilience4j를 도입할려는데 마침 관련 강의가 나와서 바로 수강하게되었습니다! 이전에 foo님의 다른 강의를 수강한적이 있었는데 정말 많은 도움이되었는데 이번에도 많은 도움이되었습니다. 정말 감사드리고 앞으로도 좋은 강의 많이 부탁드립니다! 감사합니다!

    • 이준형(Foo)
      知識共有者

      daonplace님 안녕하세요! 업무에 도움이 되셨다니 다행이네요. ㅎㅎ 제 다른 강의도 수강해주셔서 대단히 감사합니다. (_ _) 앞으로도 강의 열심히 만들어 보겠습니다!

  • 토니야님의 프로필 이미지
    토니야

    受講レビュー 17

    平均評価 4.4

    5

    100% 受講後に作成

    ¥4,685

    fooの他の講座

    知識共有者の他の講座を見てみましょう!

    似ている講座

    同じ分野の他の講座を見てみましょう!