fix indexlinks
parent
689b404e97
commit
e26ce90d49
152
README-jp.md
152
README-jp.md
|
@ -35,11 +35,11 @@
|
||||||
|
|
||||||
面接準備に役立つその他のトピック:
|
面接準備に役立つその他のトピック:
|
||||||
|
|
||||||
* [学習指針](#study-guide)
|
* [学習指針](#学習指針)
|
||||||
* [システム設計面接課題にどのように準備するか](#how-to-approach-a-system-design-interview-question)
|
* [システム設計面接課題にどのように準備するか](#システム設計面接にどのようにして臨めばいいか)
|
||||||
* [システム設計課題例 **とその解答**](#system-design-interview-questions-with-solutions)
|
* [システム設計課題例 **とその解答**](#システム設計課題例とその解答)
|
||||||
* [オブジェクト思考設計課題例, **とその解答**](#object-oriented-design-interview-questions-with-solutions)
|
* [オブジェクト思考設計課題例, **とその解答**](#オブジェクト志向設計問題と解答)
|
||||||
* [その他のシステム設計面接課題例](#additional-system-design-interview-questions)
|
* [その他のシステム設計面接課題例](#他のシステム設計面接例題)
|
||||||
|
|
||||||
## 暗記カード
|
## 暗記カード
|
||||||
|
|
||||||
|
@ -95,84 +95,84 @@
|
||||||
<br/>
|
<br/>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
* [システム設計トピック: まずはここから](#system-design-topics-start-here)
|
* [システム設計トピック: まずはここから](#システム設計トピックス-まずはここから)
|
||||||
* [Step 1: スケーラビリティに関する動画を見る](#step-1-review-the-scalability-video-lecture)
|
* [Step 1: スケーラビリティに関する動画を見る](#ステップ-1-スケーラビリティに関する動画を観て復習する)
|
||||||
* [Step 2: スケーラビリティに関する記事を読む](#step-2-review-the-scalability-article)
|
* [Step 2: スケーラビリティに関する記事を読む](#ステップ-2-スケーラビリティに関する資料を読んで復習する)
|
||||||
* [Next steps](#next-steps)
|
* [Next steps](#次のステップ)
|
||||||
* [パフォーマンス vs スケーラビリティ](#performance-vs-scalability)
|
* [パフォーマンス vs スケーラビリティ](#パフォーマンス-vs-スケーラビリティ)
|
||||||
* [レイテンシー vs スループット](#latency-vs-throughput)
|
* [レイテンシー vs スループット](#レイテンシー-vs-スループット)
|
||||||
* [可用性 vs 一貫性](#availability-vs-consistency)
|
* [可用性 vs 一貫性](#可用性-vs-一貫性)
|
||||||
* [CAP 定理](#cap-theorem)
|
* [CAP 定理](#cap-理論)
|
||||||
* [CP - 一貫性(consistency)と分割性(partition)耐性](#cp---consistency-and-partition-tolerance)
|
* [CP - 一貫性(consistency)と分割性(partition)耐性](#cp---一貫性と分断耐性consistency-and-partition-tolerance)
|
||||||
* [AP - 可用性(availability)と分割性(partition)耐性](#ap---availability-and-partition-tolerance)
|
* [AP - 可用性(availability)と分割性(partition)耐性](#ap---可用性と分断耐性availability-and-partition-tolerance)
|
||||||
* [一貫性 パターン](#consistency-patterns)
|
* [一貫性 パターン](#一貫性パターン)
|
||||||
* [弱い一貫性](#weak-consistency)
|
* [弱い一貫性](#弱い一貫性)
|
||||||
* [結果整合性](#eventual-consistency)
|
* [結果整合性](#結果整合性)
|
||||||
* [強い一貫性](#strong-consistency)
|
* [強い一貫性](#強い一貫性)
|
||||||
* [可用性 パターン](#availability-patterns)
|
* [可用性 パターン](#可用性パターン)
|
||||||
* [フェイルオーバー](#fail-over)
|
* [フェイルオーバー](#フェイルオーバー)
|
||||||
* [レプリケーション](#replication)
|
* [レプリケーション](#レプリケーション)
|
||||||
* [ドメインネームシステム(DNS)](#domain-name-system)
|
* [ドメインネームシステム(DNS)](#ドメインネームシステム)
|
||||||
* [コンテントデリバリーネットワーク(CDN)](#content-delivery-network)
|
* [コンテントデリバリーネットワーク(CDN)](#コンテントデリバリーネットワークcontent-delivery-network)
|
||||||
* [プッシュCDN](#push-cdns)
|
* [プッシュCDN](#プッシュcdn)
|
||||||
* [プルCDN](#pull-cdns)
|
* [プルCDN](#プルcdns)
|
||||||
* [ロードバランサー](#load-balancer)
|
* [ロードバランサー](#ロードバランサー)
|
||||||
* [アクティブ/パッシブ構成](#active-passive)
|
* [アクティブ/パッシブ構成](#アクティブパッシブ)
|
||||||
* [アクティブ/アクティブ構成](#active-active)
|
* [アクティブ/アクティブ構成](#active-active)
|
||||||
* [Layer 4 ロードバランシング](#layer-4-load-balancing)
|
* [Layer 4 ロードバランシング](#layer-4-ロードバランシング)
|
||||||
* [Layer 7 ロードバランシング](#layer-7-load-balancing)
|
* [Layer 7 ロードバランシング](#layer-7-ロードバランシング)
|
||||||
* [水平スケーリング](#horizontal-scaling)
|
* [水平スケーリング](#水平スケーリング)
|
||||||
* [リバースプロキシ (WEBサーバー)](#reverse-proxy-web-server)
|
* [リバースプロキシ (WEBサーバー)](#リバースプロキシwebサーバー)
|
||||||
* [ロードバランサー vs リバースプロキシ](#load-balancer-vs-reverse-proxy)
|
* [ロードバランサー vs リバースプロキシ](#ロードバランサー-vs-リバースプロキシ)
|
||||||
* [アプリケーションレイヤー](#application-layer)
|
* [アプリケーションレイヤー](#アプリケーション層)
|
||||||
* [マイクロサービス](#microservices)
|
* [マイクロサービス](#マイクロサービス)
|
||||||
* [サービスディスカバリー](#service-discovery)
|
* [サービスディスカバリー](#service-discovery)
|
||||||
* [データベース](#database)
|
* [データベース](#データベース)
|
||||||
* [リレーショナルデータベースマネジメントシステム (RDBMS)](#relational-database-management-system-rdbms)
|
* [リレーショナルデータベースマネジメントシステム (RDBMS)](#リレーショナルデータベースマネジメントシステム-rdbms)
|
||||||
* [マスター/スレーヴ レプリケーション](#master-slave-replication)
|
* [マスター/スレーヴ レプリケーション](#マスタースレーブ-レプリケーション)
|
||||||
* [マスター/マスター レプリケーション](#master-master-replication)
|
* [マスター/マスター レプリケーション](#マスターマスター-レプリケーション)
|
||||||
* [フェデレーション](#federation)
|
* [フェデレーション](#federation)
|
||||||
* [シャーディング](#sharding)
|
* [シャーディング](#シャーディング)
|
||||||
* [デノーマライゼーション](#denormalization)
|
* [デノーマライゼーション](#非正規化)
|
||||||
* [SQL チューニング](#sql-tuning)
|
* [SQL チューニング](#sqlチューニング)
|
||||||
* [NoSQL](#nosql)
|
* [NoSQL](#nosql)
|
||||||
* [キー/バリューストア](#key-value-store)
|
* [キー/バリューストア](#キーバリューストア)
|
||||||
* [ドキュメントストア](#document-store)
|
* [ドキュメントストア](#ドキュメントストア)
|
||||||
* [ワイドカラムストア](#wide-column-store)
|
* [ワイドカラムストア](#ワイドカラムストア)
|
||||||
* [グラフ データベース](#graph-database)
|
* [グラフ データベース](#グラフデータベース)
|
||||||
* [SQL or NoSQL](#sql-or-nosql)
|
* [SQL or NoSQL](#sqlかnosqlか)
|
||||||
* [キャッシュ](#cache)
|
* [キャッシュ](#キャッシュ)
|
||||||
* [クライアントキャッシング](#client-caching)
|
* [クライアントキャッシング](#クライアントキャッシング)
|
||||||
* [CDNキャッシング](#cdn-caching)
|
* [CDNキャッシング](#cdnキャッシング)
|
||||||
* [Webサーバーキャッシング](#web-server-caching)
|
* [Webサーバーキャッシング](#webサーバーキャッシング)
|
||||||
* [データベースキャッシング](#database-caching)
|
* [データベースキャッシング](#データベースキャッシング)
|
||||||
* [アプリケーションキャッシング](#application-caching)
|
* [アプリケーションキャッシング](#アプリケーションキャッシング)
|
||||||
* [データベースクエリレベルでキャッシングする](#caching-at-the-database-query-level)
|
* [データベースクエリレベルでキャッシングする](#データベースクエリレベルでのキャッシング)
|
||||||
* [オブジェクトレベルでキャッシングする](#caching-at-the-object-level)
|
* [オブジェクトレベルでキャッシングする](#オブジェクトレベルでのキャッシング)
|
||||||
* [いつキャッシュを更新するのか](#when-to-update-the-cache)
|
* [いつキャッシュを更新するのか](#いつキャッシュを更新するか)
|
||||||
* [キャッシュアサイド](#cache-aside)
|
* [キャッシュアサイド](#キャッシュアサイド)
|
||||||
* [ライトスルー](#write-through)
|
* [ライトスルー](#ライトスルー)
|
||||||
* [ライトビハインド (ライトバック)](#write-behind-write-back)
|
* [ライトビハインド (ライトバック)](#ライトビハインド-ライトバック)
|
||||||
* [リフレッシュアヘッド](#refresh-ahead)
|
* [リフレッシュアヘッド](#リフレッシュアヘッド)
|
||||||
* [異時性](#asynchronism)
|
* [非同期処理](#非同期処理)
|
||||||
* [メッセージキュー](#message-queues)
|
* [メッセージキュー](#メッセージキュー)
|
||||||
* [タスクキュー](#task-queues)
|
* [タスクキュー](#タスクキュー)
|
||||||
* [バックプレッシャー](#back-pressure)
|
* [バックプレッシャー](#バックプレッシャー)
|
||||||
* [通信](#communication)
|
* [通信](#通信)
|
||||||
* [伝送制御プロトコル (TCP)](#transmission-control-protocol-tcp)
|
* [伝送制御プロトコル (TCP)](#transmission-control-protocol-tcp)
|
||||||
* [ユーザデータグラムプロトコル (UDP)](#user-datagram-protocol-udp)
|
* [ユーザデータグラムプロトコル (UDP)](#user-datagram-protocol-udp)
|
||||||
* [遠隔手続呼出 (RPC)](#remote-procedure-call-rpc)
|
* [遠隔手続呼出 (RPC)](#remote-procedure-call-rpc)
|
||||||
* [Representational state transfer (REST)](#representational-state-transfer-rest)
|
* [Representational state transfer (REST)](#representational-state-transfer-rest)
|
||||||
* [セキュリティ](#security)
|
* [セキュリティ](#セキュリティ)
|
||||||
* [補遺](#appendix)
|
* [補遺](#補遺)
|
||||||
* [2の指数表](#powers-of-two-table)
|
* [2の乗数表](#2の乗数表)
|
||||||
* [全てのプログラマーが知っておくべきレイテンシの参考値](#latency-numbers-every-programmer-should-know)
|
* [全てのプログラマーが知るべきレイテンシー値](#全てのプログラマーが知るべきレイテンシー値)
|
||||||
* [その他システム設計面接での質問例](#additional-system-design-interview-questions)
|
* [他のシステム設計面接例題](#他のシステム設計面接例題)
|
||||||
* [実世界でのアーキテクチャ](#real-world-architectures)
|
* [実世界でのアーキテクチャ](#実世界のアーキテクチャ)
|
||||||
* [各企業のアーキテクチャ](#company-architectures)
|
* [各企業のアーキテクチャ](#各企業のアーキテクチャ)
|
||||||
* [各企業のエンジニアリングブログ](#company-engineering-blogs)
|
* [企業のエンジニアブログ](#企業のエンジニアブログ)
|
||||||
* [作業中](#under-development)
|
* [作業中](#進行中の作業)
|
||||||
* [クレジット](#credits)
|
* [クレジット](#クレジット)
|
||||||
* [連絡情報](#contact-info)
|
* [連絡情報](#contact-info)
|
||||||
* [ライセンス](#license)
|
* [ライセンス](#license)
|
||||||
|
|
||||||
|
@ -1524,7 +1524,7 @@ RESTはデータを公開することに焦点を当てています。クライ
|
||||||
* [開発者のためのセキュリティガイド](https://github.com/FallibleInc/security-guide-for-developers)
|
* [開発者のためのセキュリティガイド](https://github.com/FallibleInc/security-guide-for-developers)
|
||||||
* [OWASP top ten](https://www.owasp.org/index.php/OWASP_Top_Ten_Cheat_Sheet)
|
* [OWASP top ten](https://www.owasp.org/index.php/OWASP_Top_Ten_Cheat_Sheet)
|
||||||
|
|
||||||
## 付録
|
## 補遺
|
||||||
|
|
||||||
暗算で、推計値を求める必要があることも時にはあります。例えば、ディスクから100枚イメージ分のサムネイルを作る時間を求めたり、その時にどれだけディスクメモリーが消費されるかなどの値です。**2の乗数表** と **全てのプログラマーが知るべきレイテンシー値** は良い参考になるでしょう。
|
暗算で、推計値を求める必要があることも時にはあります。例えば、ディスクから100枚イメージ分のサムネイルを作る時間を求めたり、その時にどれだけディスクメモリーが消費されるかなどの値です。**2の乗数表** と **全てのプログラマーが知るべきレイテンシー値** は良い参考になるでしょう。
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue