Repolode
donnemartin

donnemartin/system-design-primer

大規模システム設計の学習やシステム設計面接の準備に役立つ、サンプル解答とAnkiのフラッシュカード付きの無料・オープンソース学習ガイドです。

スター
374,932
フォーク
58,922
未解決の Issue
628
最終コミット
先月

これは何?

System Design Primerは、大規模システムの設計方法を学ぶための体系的な資料集です。パフォーマンスとスケーラビリティ、レイテンシとスループット、可用性と一貫性といった基本的なトレードオフを解説し、DNS、CDN、ロードバランサー、リバースプロキシ、データベース(SQLとNoSQL)、キャッシュ戦略、非同期メッセージング、TCP、UDP、RPC、RESTなどの通信プロトコルといった構成要素を扱います。

面接対策も目的のひとつです。自由回答形式の設計問題に答えるための手順を段階的に解説し、URL短縮サービス、Twitter風のタイムライン、Webクローラー、ソーシャルグラフなど、よくあるお題の解答例を掲載しています。別のセクションでは、ノートブック形式の解答とともにオブジェクト指向設計の問題を扱います。

学習補助ツールとして、間隔反復学習に使えるAnkiデッキが用意されており、リポジトリは多数の言語に翻訳されています。内容はオープンソースコミュニティの貢献によって更新されています。

主な機能

  • 01CAP、一貫性パターン、可用性の数値化など、基本的なトレードオフを解説
  • 02ロードバランサー、キャッシュ、シャーディング、メッセージキューなどの構成要素を説明
  • 03よくあるシステム設計面接の質問に対する解答例を掲載
  • 04ノートブック形式の解答付きでオブジェクト指向設計の演習を収録
  • 05間隔反復学習に使えるAnkiのフラッシュカードデッキを提供

ユースケース

  • バックエンドやインフラの面接におけるシステム設計面接の準備
  • 分散システムアーキテクチャの基礎を身につける
  • スケーラブルなサービスを設計する前にトレードオフを確認する
  • 短時間の学習でフラッシュカードを使って重要な概念を復習する

使う前に知っておきたいこと

  • プロジェクトのメタデータからライセンスを特定できなかったため、再利用条件が不明です。

トピック

よくある質問

system-design-primer とは?
大規模システム設計の学習やシステム設計面接の準備に役立つ、サンプル解答とAnkiのフラッシュカード付きの無料・オープンソース学習ガイドです。 System Design Primerは、大規模システムの設計方法を学ぶための体系的な資料集です。パフォーマンスとスケーラビリティ、レイテンシとスループット、可用性と一貫性といった基本的なトレードオフを解説し、DNS、CDN、ロードバランサー、リバースプロキシ、データベース(SQLとNoSQL)、キャッシュ戦略、非同期メッセージング、TCP、UDP、RPC、RESTなどの通信プロトコルといった構成要素を扱います。
system-design-primer は無料で使えますか?ライセンスは?
system-design-primer は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
system-design-primer は今もメンテナンスされていますか?
半年以内に更新あり。system-design-primer の最終コミットは 2026年9月15日 です。
system-design-primer は何に使えますか?
バックエンドやインフラの面接におけるシステム設計面接の準備 分散システムアーキテクチャの基礎を身につける スケーラブルなサービスを設計する前にトレードオフを確認する 短時間の学習でフラッシュカードを使って重要な概念を復習する
system-design-primer はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/donnemartin/system-design-primer

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト