スケールアウト の変更点


#author("2022-08-22T23:06:30+09:00","default:k1rou","k1rou")
*スケールアウトとは [#d5d40b82]
#author("2024-02-25T16:50:23+09:00","default:k1rou","k1rou")
*スケールアウト [#d5d40b82]
-水平スケール

-一つのサービスを、複数のサーバで分担する
-[[冗長化]](多重化)
-[[クラスタリング]]
-[[水平分散]]

**スケールイン [#k7119841]
-サーバを増やすスケールアウトに対して、スケールインはサーバを減らすこと

*方式 [#l7c65b18]
**Shared Disk [#racecf1c]
-ストレージを共有する

**Shared Nothing [#h4fb0517]
-ストレージを共有しない
-マスターとスレーブでレプリケーション
-同期と非同期がある

*Webサービスのスケールアウト [#i74cd108]
-サーバ間のセッション情報を共有する
-リクエストをまたぐ一時ファイルを共有する

**実装方法 [#bd0f0069]
-[[memcached]] -KVS
-repcached -Active-Activeの冗長化
-NFS
-DB

*[[Webサーバ]]のスケールアウト [#x983c480]
-[[DNSラウンドロビン]]

*DBのスケールアウト [#j1531d8d]
-MasterとSlaveの構成
-RDBMSのレプリケーション機能を使う
-Masterに書き込み、Slaveに反映する。タイムラグが発生する
-レプリケーション方式によっては使ってはいけないSQLや関数がある。
-[[シャーディング]]

**更新系 [#q8924873]
-水平分割
-データの区分や番号帯ごとに分けて格納する。
-問い合わせる側で、問い合わせ先を判断する必要がある。
-データの集計はマージが必要。

**参照系 [#jd917f44]
-ロードバランス機能を持ったミドルウェアで分散する。
-keepalived
-HAProxy

**レプリケーション [#d4570fb0]
-非同期
-準同期

*関連用語 [#z3d7b52e]
-[[イミュータブル・インフラストラクチャー]]
-[[機能分割]]
-[[オートスケール]]
-[[キャパシティ管理]]
-[[クラスタリング]]
-[[サーバ]]
-[[スケーリング]]
-[[分散]]
-[[スケールアップ]]
-[[非機能要件]]
-[[冪等性]]
-[[ロードバランサ]]