#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] -[[イミュータブル・インフラストラクチャー]] -[[機能分割]] -[[オートスケール]] -[[キャパシティ管理]] -[[クラスタリング]] -[[サーバ]] -[[スケーリング]] -[[分散]] -[[スケールアップ]] -[[非機能要件]] -[[冪等性]] -[[ロードバランサ]]