Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
Programming

/

Back-end

DGS: NETFLIXがSpring Bootで大量トラフィックを処理する方法

NetflixがRESTの代わりに選択したDGS! 実際にNetflixが大量のトラフィックを処理するために使用しているフレームワークで、Spring BootでGraphQLを簡単かつ強力に活用する方法を学びましょう!🔥

  • burger
실습 중심
GraphQL
Spring Boot
netflix-dgs

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

こんなことが学べます

  • Spring Bootで実装する効率的なGraphQLサーバー

  • NETFLIXのDGSフレームワークを活用したサーバー開発

  • DGSで効率的な大容量トラフィック処理方法

NETFLIX-DGSフレームワークとは何ですか?

1⃣ Netflixが直接開発して使用しているSpring BootベースのGraphQLフレームワーク

2⃣既存のREST APIの問題を克服し、マイクロサービス環境で最適なGraphQL運用のために作成されました。

3⃣開発者の効率的な生産性に焦点を当てて開発されたフレームワークです。

4⃣Netflix内部の何百ものサービスでDGSを使用し、実務で検証された技術です。

5⃣ GraphQL Federationをサポートし、大規模なシステムでもスケーラビリティに優れています。

6⃣NetflixのJava Platformチームは継続的な開発と最適化を行っており、現在はオープンソースとして公開されています。 🚀

NETFLIXSpring Bootで大量のトラフィックを効率的に処理する方法

NETFLIXはこのプロセスを通じてDGSフレームワークを開発しました。

  • 2018年NETFLIXは、REST API運用の問題を解決するためのGraphQLの活用を研究

  • 2019年、一部のサービスにGraphQLの導入を開始

  • 2020年にGraphQLをより効率的に開発できるようにDGSフレームワークを設計

  • 2021年に内部的にのみ使用していたDGSフレームワークをオープンソースで公開

  • 2022年~現在まで、NETFLIXは内部の数百のサービスをDGSとして運営中であり、継続的に改善する計画

信じて書くDGSフレームワーク1 - 頑固な支援群

DGSの最初のAuthorであり、開発の中心となる人物はPaul Bakkerという開発者です。

PaulはJava Championとしても選ばれるほど、Javaエコシステムで影響力の大きい開発者です。

実際にPaulとメールをやり取りし、NETFLIX内部でDGSの継続的な開発と意志を確認することができました。

巨大リソースを保有するNETFLIXが支援群とは疑いもなく信じて使えるという保証だと私は思います😀

Paul Bakker

DGS Github README

信じて書くDGSフレームワーク2 - 継続的な改善

DGSはNETFLIX内部でも現在積極的に使用されており、多くのNETFLIX OSS (Open Source Software)の中でもアップデートが最も活発に行われているフレームワークの一つです。


実際にDGS FitHub Repositoryを確認すると、常に1週間以内に新しいバージョンがリリースされることを確認できます。

NETFLIXSpringチーム間の緊密な協力で10.xバージョンをリリース!

2024年3月、NETFLIXはSpringチームと緊密な協力を得て、DGSとSpring for GraphQLの統合を発表しました。
統合計画は2024年末までに予定されており、2024年12月21日に10.xバージョンに統合されてリリースされました!

このバージョンでは、従来のレガシーモジュールとコードの両方を削除し、コードベースのサイズを大幅に削減しました。

これは、今後の機能開発のスピードアップに貢献することが期待されます。

そしてパフォーマンスの最適化作業を経て、開発者がより効率的な開発ができるようになったそうです。

この講義により、NETFLIXが採用した技術を直接サービスに導入することができます!

講義では、DGSの基本的な使用方法を必要な内容だけをできるだけ簡潔に込めました。

あるスキルを学ぶには講義時間が短いと思うかもしれませんが、映像で不要な内容と意味のない時間をすべて編集で切り取り、ちょうど必要だと思われる部分だけ残しました。

小さなサービスを直接開発する経験により、迅速にスキルを習得できます!

講義では、仮想映画検索プラットフォームであるmoviewサービスをDGSを使って開発を進めています。

こういう経験により、素早くスキルを習得し、実務に取り入れる感覚を身につけることができます!

最も簡単で快適に理解できるように講義を整理しました!

各セクションでは、DGSの1つの機能について理論講義を最初に学び、実習に進む方法で簡単に解くように狙いました。


理論講義の一部

kotlinとjava開発者の両方にコードを提供

講義で実習はkotlinで進行しますが、必要なコードは講義映像の下の授業ノートを通じてjavaコードでも提供されています!

提供されるjavaコード

GraphQLの事前知識がない場合は?

私の無料講義の中で、GraphQLの理論と実践を扱う講義があります。

該当講義でスプリングで簡単な実習も行われますので、GraphQLを初めて接する方も該当講義のみ受講されたら、問題なくこの講義も受講いただけます!


右の画像をタップするとすぐに講義に移動します!

スクリーンショット2025-02-23午後6.35.33

無料GraphQL講義

受講前の注意

Netflix DGSオープンチャットルームを開設しました! 😊

現在、国内に大きく活性化されたDGSのコミュニティが存在せず、関心のある方同士で情報を共有できるそんな空間があればいいと思うようになりました!

まだ初期技術であるだけに、新しい多くの変化と新しいニュースが多いと思います。

私もまだ学んで経験していく立場で、同じ考えを持った方々と一緒に文化を作りたいと思います!

興味のある方は下記カカオオープンチャットルームにお気軽にお越しいただければ幸いです!

また、講義に関する質問もこのチャットルームや、または1対1チャットで楽に聞いていただいてもいいです!
ありがとうございます!


Netflix DGS韓国1号店

https://open.kakao.com/o/go6lsDDg

練習環境

  • オペレーティングシステムとバージョン(OS):macOS

  • 使用ツール: intellij IDE

  • フレームワーク: Spring Boot 3.4.x / DGS 10.0.x

  • 使用言語: kotlin

学習資料

  • 講義の台本と合わせて製作してみると、似たようなページが連続したりする理由でpptだけでは学習に適さないと判断され、講義に学習資料をアップロードしませんでした。

  • 必要な方はお問い合わせを残していただければppt資料提供させていただきます。


選手の知識と注意事項

  • Spring Bootフレームワークの基本的な理解があれば、受講に役立ちます。

  • GraphQLの基本的な理解があれば、受講に役立ちます。
    ->私の無料講義のみ受講しても十分です!


こんな方に
おすすめです

学習対象は
誰でしょう?

  • Spring BootでGraphQL APIを開発したい方々へ

  • Netflixが大量のトラフィックを処理する方法を学びたい方

  • GraphQLを実務でしっかり活用したい開発者

  • REST에서 GraphQL로 전환을 고려하는 기업 및 팀

前提知識、
必要でしょうか?

  • GraphQLの基本概念

  • JavaまたはKotlin Spring Bootの基本概念

こんにちは
です。

1,790

受講生

50

受講レビュー

46

回答

4.8

講座評価

3

講座

 

AWS Certificated Professional 및 Associate 다수 보유

현 스타트업 CTO

カリキュラム

全体

36件 ∙ (2時間 43分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

7件

5.0

7件の受講レビュー

  • handicap256327님의 프로필 이미지
    handicap256327

    受講レビュー 1

    平均評価 5.0

    5

    100% 受講後に作成

    Tôi thấy kỹ thuật này khá mới mẻ trong Spring, nhưng tôi đã học được một góc nhìn mới, điều đó thật tuyệt. Cá nhân tôi nghĩ rằng nếu tôi nghiên cứu thêm một chút và áp dụng nó, chắc chắn nó sẽ rất hiệu quả. Tôi thấy bài giảng rất hay vì nó dạy nhanh chóng những phần cần thiết.

    • burger
      知識共有者

      Chào anh 건호! Em cũng tò mò khi nghe nói Netflix đang sử dụng một công nghệ mà em chưa từng thấy, sau khi dùng thử thì thấy nó hiệu quả và tốt hơn em mong đợi nên em đã quyết định áp dụng. Thực tế là sau khi áp dụng, em cảm thấy rõ ràng chi phí vận hành đã giảm ạ 😊😊 Em hy vọng DGS và bài giảng của em sẽ giúp ích cho dịch vụ của anh 건호. Cảm ơn anh vì bài đánh giá ạ 😃

  • dlqm16810666님의 프로필 이미지
    dlqm16810666

    受講レビュー 2

    平均評価 5.0

    5

    31% 受講後に作成

    • salt님의 프로필 이미지
      salt

      受講レビュー 19

      平均評価 5.0

      5

      31% 受講後に作成

      Đây là một bài giảng rất hữu ích vào thời điểm tôi đang suy nghĩ về các công nghệ giao diện mới.

      • burger
        知識共有者

        Chào DoYoung Ahn! Tôi cũng luôn khao khát những công nghệ mới, và khi tìm thấy công nghệ này, tôi cảm thấy như được giải khát giữa cơn hạn. Hiện tại tôi vẫn đang sử dụng nó trong công việc thực tế, và tôi nghĩ đây là một công nghệ cực kỳ tiện lợi và hiệu quả một khi đã quen thuộc. Hy vọng nó cũng đã hữu ích cho DoYoung. Cảm ơn bạn!😀

    • mwson9876995님의 프로필 이미지
      mwson9876995

      受講レビュー 13

      平均評価 5.0

      5

      8% 受講後に作成

      • burger
        知識共有者

        Chào anh/chị Son Min-woo! Hy vọng buổi học hữu ích. Cảm ơn! 👍

    • haerong22님의 프로필 이미지
      haerong22

      受講レビュー 27

      平均評価 4.9

      5

      100% 受講後に作成

      Có vẻ như có thể dễ dàng áp dụng thử.

      • burger
        知識共有者

        Xin chào bạn mới~! Áp dụng thực tế, bạn sẽ thấy hiệu suất vận hành tăng mạnh. Cảm ơn đã tham gia, mong rằng nó hữu ích!😀

    期間限定セール

    ¥835,769

    9%

    ¥5,213

    burgerの他の講座

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

    似ている講座

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