강의

멘토링

커뮤니티

Programming

/

Back-end

拡張可能なシステムを設計する

現代のデジタル製品とサービスは、小さなアイデアから始まり、何百万ものユーザーに愛される製品へと成長します。これを可能にする鍵は、拡張性の高いシステム設計です。この講義では、小規模から大規模なシステムへと成長できる設計原理と実践方法を学びます。

難易度 初級

受講期間 無制限

  • jykmww1219
  • SpringRunner
software-design
software-design
Architecture
Architecture
software-design
software-design
Architecture
Architecture

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

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

4.9

5.0

vvlfmald

100% 受講後に作成

申し込んで一気に全部見ました! この講義は初心者向けと紹介されていますが、IT業界に携わるすべての人に役立つ内容だと思います! 勉強、就職、転職を目指して走っていると、ついつい「木」だけを見て「森」を見ないことがよくあります。(私自身もそうでした...😭^😭) 講義を受ける前にも、「検索エンジン」や「スケールアウト」といった概念は聞いたことがあり、知っていました。しかし、それがなぜ必要になるのか、そして導入後にどのような流れで発展するのかを体系的に整理して理解していたわけではありませんでした。そのため、私がこの講義で取り上げる内容を説明したとしても、結局は私が多少知っている特定の概念(木)に集中していたことでしょう。 しかし、この講義では、そのような概念がどのようにつながって、世界中のトラフィックを処理する巨大なサービスに拡張されるのかを自然に理解できるようにしてくれます!! おかげで、サービス設計をより広い視野で捉えることができるようになりました! 講義が次から次へと続くので、とても面白くて一気に視聴しましたが、これからも頻繁に視聴すると思います!

5.0

Jacky

100% 受講後に作成

講師の他の講義でこの内容を聞く機会があったのですが、そのときとても楽しく聞いて、講義で出たら必ずまた聞こうと思いました。 いつも細部を勉強していたので、全体像を知りたいという気持ちが強かったのですが、自分が関与している部分がプロジェクト全体の中でどの部分なのか、他の部分とどのように関連しているのかを理解できる素晴らしい講義です。 全体から遠く離れた視点を持つことで、視野がずっと広くなったような気がします。

5.0

코크

100% 受講後に作成

とても良い講義でした。

受講後に得られること

  • 小規模から大規模なサービスに成長するための拡張性の高いシステム設計の基本原理を学びます。

  • 可用性、性能、拡張性を考慮した段階的な設計戦略と実践方法を学びます。

  • プラットフォーム、サーバー、クライアント エンジニアリングの役割と連携方法について説明します。

スケーラブルなシステムを設計する。小さなアイデアから大規模なサービスへ -

現代のデジタル製品とサービスは、小さなアイデアから始めて、何百万人ものユーザーに愛される姿に成長します。これを可能にする鍵は、スケーラブルなシステム設計です。スケーラビリティは、システムがユーザーの増加とデータの暴力に対応する能力です。

この講義はプロジェクト#POTD(Photo of the Day)を中心に行われます。 POTDは一日一枚の写真で私たちの物語を特別にするシンプルで直感的なアプリです。ユーザーは写真を撮って短い投稿でアップロードした後、他のユーザーとコミュニケーションをとり、[いいね]をタップしてコメントできます。また、ハッシュタグを使って関心事が似た人の写真を簡単に閲覧できるアイデアから出発しました。

しかし、シンプルに見えるこのアプリも、ユーザーが徐々に増えていく過程でシステム運営に多くの課題を抱えています。このレッスンでは、POTDプロジェクトを通じてOutside-InおよびAPI-First Development Approachを適用してMVP(最小機能製品)を設計してリリースした後、実際にユーザー数とトラフィックが増加したときに発生するさまざまな問題を解決し、システムを拡張していく過程を学びます。

POTDプロジェクトで取り上げる主な学習内容は次のとおりです。

  • 最小機能製品として出発し、初期のユーザー要件に焦点を当てた簡潔で効率的なシステム設計を学びます。

  • ユーザーの増加に備えてサーバーを水平に拡張し、ロードバランサーを介してトラフィックを効果的に分散する方法を学びます。

  • データベースのクラスタリング、レプリケーション、キャッシング戦略により、大規模なデータを確実かつ迅速に処理する方法を学びます。

  • データベース検索の制限を克服するために、検索エンジンとメッセージキューを導入して効率的な検索と非同期処理を実装します。

  • 機械学習を導入してユーザーデータを分析し、パーソナライズされた推奨システムを設計します。

  • CDNとマルチデータセンターを介してグローバルユーザーに迅速で信頼性の高いサービスを提供する方法を学びます。

ソフトウェア開発は単にシステムを動作させるのではなく、変化する環境でも価値を維持し拡張できるようにすることです。このレッスンで、スケーラブルで柔軟なシステム設計の第一歩を一緒に始めましょう。 🚀

このようなことを学びます。

スケーラブルなシステム設計

POTDプロジェクトを通じて、MVPから始めてグローバルサービスを設計するプロセスを段階的に学びます。ロードバランシング、データベースクラスタリング、検索エンジン、キャッシュ、CDNなどの主要技術を活用して、パフォーマンスとスケーラビリティを備えたシステムを設計します。

スケーラビリティを考慮したソフトウェア設計

水平拡張で発生するセッション管理の問題を解決し、ソフトウェアを柔軟に設計する方法を学びます。また、変化する環境でもシステムの価値を維持できる適応型アーキテクチャについても学びます。

受講前の注意

注意事項

  • この講義は実践を含まない理論中心の講義であり、主に概念と戦略を紹介し、理解を助けるために焦点を当てています。

  • このレッスンでは、スケーラブルなシステム設計に初めて触れる学習者のために概念を理解しやすく説明します。しかし、各技術の深化された内容は別々の学習が必要です。

  • この講義は、より正確な配信のためにAIボイス技術を使用して作成されました。


こんな方に
おすすめです

学習対象は
誰でしょう?

  • プログラミングには慣れているが、システム アーキテクチャの設計には慣れていない方

  • 実務経験はないが、ソフトウェアエンジニアリングの全体的な構造とシステム設計の原理を理解したい方

  • 小さなアイデアから出発して大規模なサービスを作成し、運営するプロセスについて学びたい方

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

  • 1 つ以上のプログラミング言語 (Java、Python など) の経験が必要です。

  • コンピューター サイエンス (CS) の基本概念 (データベース、ネットワーク、アルゴリズムなど) を理解する必要があります。

  • HTTP と Web アプリケーションの動作原理の基礎が必要です。

こんにちは
です。

1,479

受講生

47

受講レビュー

4.9

講座評価

3

講座

JYK management

“Jazz Your Knowledge 🆙

「あなたの知識をもっと楽しく、もっと魅力的にせよ」

—— 「あなたのアイデアが世界を変えることができます。私たちはその過程を共にします。」

「あなたのアイデアが世界を変えることができます。私たちはその過程を共にします。」

カリキュラム

全体

16件 ∙ (1時間 19分)

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

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

受講レビュー

全体

17件

4.9

17件の受講レビュー

  • pilming님의 프로필 이미지
    pilming

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    申し込んで一気に全部見ました! この講義は初心者向けと紹介されていますが、IT業界に携わるすべての人に役立つ内容だと思います! 勉強、就職、転職を目指して走っていると、ついつい「木」だけを見て「森」を見ないことがよくあります。(私自身もそうでした...😭^😭) 講義を受ける前にも、「検索エンジン」や「スケールアウト」といった概念は聞いたことがあり、知っていました。しかし、それがなぜ必要になるのか、そして導入後にどのような流れで発展するのかを体系的に整理して理解していたわけではありませんでした。そのため、私がこの講義で取り上げる内容を説明したとしても、結局は私が多少知っている特定の概念(木)に集中していたことでしょう。 しかし、この講義では、そのような概念がどのようにつながって、世界中のトラフィックを処理する巨大なサービスに拡張されるのかを自然に理解できるようにしてくれます!! おかげで、サービス設計をより広い視野で捉えることができるようになりました! 講義が次から次へと続くので、とても面白くて一気に視聴しましたが、これからも頻繁に視聴すると思います!

    • jacky님의 프로필 이미지
      jacky

      受講レビュー 1

      平均評価 5.0

      5

      100% 受講後に作成

      講師の他の講義でこの内容を聞く機会があったのですが、そのときとても楽しく聞いて、講義で出たら必ずまた聞こうと思いました。 いつも細部を勉強していたので、全体像を知りたいという気持ちが強かったのですが、自分が関与している部分がプロジェクト全体の中でどの部分なのか、他の部分とどのように関連しているのかを理解できる素晴らしい講義です。 全体から遠く離れた視点を持つことで、視野がずっと広くなったような気がします。

      • cokes님의 프로필 이미지
        cokes

        受講レビュー 19

        平均評価 5.0

        修正済み

        5

        100% 受講後に作成

        とても良い講義でした。

        • juhojeong4641님의 프로필 이미지
          juhojeong4641

          受講レビュー 12

          平均評価 5.0

          5

          31% 受講後に作成

          • rlawns34672614님의 프로필 이미지
            rlawns34672614

            受講レビュー 3

            平均評価 5.0

            5

            100% 受講後に作成

            ¥1,396

            jykmww1219の他の講座

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

            似ている講座

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