setup
それぞれのアーキテクチャのsetup手順をまとめる
DevOpsのロードマップ参照
- リバースプロキシ
- キャッシュサーバ
- フォワードプロキシ
- ロードバランサ
上記をサーバーレスフレームワークでまとめるのがいいのではないか。
プロキシとリバースプロキシの違い
-
プロキシとは 一般的に使われるプロキシとは、forward proxyのこと forward proxyとは、ある別のWebサイトへのリクエストを受け取り、クライアントの代わりにWebサイトへリクエストを送信するサーバのこと。
-
プロキシを使う目的 例としては クライアントがWebサイトの権限者からブロックされているとき(IPでブラックリスト) Youtubeへの通信をブロックしている会社からYoutubeにアクセスしたい時 政府が特定のニュースサイトへの通信を遮断しているとき 大学がHTTP以外のプロトコルを制限している時(研究室内のサーバにアクセスするために踏み台としてプロキシを使う。)
-
リバースプロキシとは リクエストの流れはプロキシと同様で、クライアント → リバースプロキシ → Webサーバのように伝わる。 リバースプロキシではクライアントはWebサーバの存在を知らないという大きな違いがある。
リバースプロキシを使う目的
-
キャッシュや圧縮による高速化 リバースプロキシにてデータのキャッシングや圧縮をすることが可能。 同じページへアクセスがあった場合は外部のサーバへアクセスを行わずに済むため、応答性能の向上や通信量の削減になる。
-
セキュリティの向上 IPアドレスでのフィルタリングにより、悪意のあるホストからのリクエストの遮断や特定のIPのみ許可できる。 webサーバは直接インターネットに接する必要がないためリスクが低減する。 リバースプロキシ上でファイアウォールなどのセキュリティ対策をすることでwebサーバに直接手を加える ことなく安全性を高めることができる。
-
SSLの集中管理 クライアントとリバースプロキシ間の通信路でSSLが暗号化される場合、リバースプロキシが通信内容を復号することで、通信するWebサーバ自体をそれぞれHTTPSに対応させることなく、通信路を暗号化することが可能。
-
負荷分散 Webサーバは複数台で構成され、1台のリバースプロキシサーバから複数のWebサーバにリクエストを振り分け負荷分散が可能。 また、リバースプロキシでURLを分解してからURLを変換しWEBサーバーに転送ができ、URLの短縮も行うことができる。
-
メモリ効率の向上 URLから静的コンテンツ/動的コンテンツを各サーバーに振り分けて処理を行うことができ、全体としてメモリ使用効率が上がる。