brand new note

ジャズ屋が技術の話をするところ

リバースプロキシを知る

コンテナの勉強してたら丁度補足的な用語説明として割り込まれたのですが,これ知ってなきゃかなりまずいよなと思ったのでメモ.これはメモです.読み物じゃないです.リバースプロキシの説明としては以下の内容が記載されていました.

クライアントとサーバの通信の間に入って、
サーバの応答を代理(proxy)しつつ通信を中継する機能、
あるいはその役割を担うサーバのことをリバースプロキシといいます。

いる???

なんで間に入るの?姑か??

https://naoya-2.hatenadiary.org/entry/20140826/1409024573

メリットを検索したところいくつか有用そうなものが出てきました.クライアントとサーバはわかるけど,フロントエンドとバックエンドとかっていうのが未だにわかってなくて,これはかなりまずいなと思いながらこちらの記事を読みました.webシステム全体で考えたときにパフォーマンスが上がるように,クライアント側で済ませたほうがいいであろう軽量な処理とサーバ側でまとめたほうがいいような重めの処理を分担させるために,中間に専用のマシンを置いておいた方がいいでしょうという考え方なのかなと思いました.というか,これは一読してその場でまとめているだけなのでかなり粗いですが.記事の最後に紹介されている書籍がちょうど右手から70cmのところに置いてあったので読みます.

読めなくても読めるようになったときの為に書籍を買うっていうのが個人的には好きです.ほら,なんか自分の将来が約束されてるような感じがしていいじゃないですか.無責任でしょうか.そうですか.

Apacheを使ってリバースプロキシの構築ができるらしい.つまり手元でもできるということですね.いいぞいいぞ.わかんないことはいっぱいあるけど手を動かせる理由があるなら分からないことは後からわかるので今は気にしない.これができなくて私は高校数学ができなかったんですよ.いやそれはどうでもいいんです.まず読みます.

workerのプロセス,スレッド数をデフォルトの数より多めに設定してあげることで,バックエンドのAPサーバの負荷をリバースプロキシでいなしてあげることができます.ああ.概念は知ったのでなんかこれは...いいことをしているんだろうな.

また無計画に沼に嵌ってしまったのでここでどこまでこの話題を深堀するかを整理します.

  • リバースプロキシの概要とメリットを知る(一旦済)
  • できることなら手を動かして実際にリバースプロキシを立ててみる
    • クライアント - リバースプロキシ - APサーバ(単体)
    • クライアント - リバースプロキシ - APサーバ(複数)
    • VMが3台か4台必要なので立てる
  • 確認したいこと
    • 全台疎通
    • Apacheのコンフィグが理屈に基づく調整
    • 負荷テストツールを使ってアクセス負荷を視認

この辺りまでなら書籍を用いてなんとかできそうです.いやほんとかな.ほんとにやるのかな.なんか脱線してる気がするんだけどな.

  • フロントエンドとバックエンドの云々というのがどの切り口から調べたら最短で頭に入るのか知りたい.今までの勉強が役に立つならそうしたい.
  • もう少し上の記事以外の観点から見たリバースプロキシに関する言及はあるので何個か読む

本来今日やりたかった勉強はこれではないのでそろそろ戻ります.

1時間後

やりたかった勉強に戻ったらリバースプロキシをnginxコンテナで実装してwebアクセスすることに成功しました.しかもなんかhtmlを直接書かずに静的なサイトコンテンツを持ったサンプルのコンテナをコマンドから呼び出す...みたいなことをしてwebアクセスしてました.全然調べたことと想定していたゴールが違うけどゴールしているというか,言うこと聞いてまっすぐ勉強するのが一番経験値効率高いというのはきっとこういうことなんでしょうね....

手を動かしてみると一度勉強しようとして書いた前半部が結構難しいことをやろうとしてたんだなということにも気が付きます.そりゃ実務向けの書籍だからそうだろうという感じではあります.

人の役に立つところまで知見をためて力にするという目的で勉強するとなると,どちらにせよ「1回じゃやったことを確実に覚えてない」とか「真に肝心なところを捉えられていなくて無駄足を踏んでいる」とか「基本からやるができていない」とか,色々足りないところを意識しなければならないのでしょうが,今日はもう寝る時間なので寝てこれは明日以降の課題にしようと思います.この感じだといい文章を書くためにブログを書くという目的はしばらく優先できそうにないですね.

追記

【Nginx】リバースプロキシサーバ構築 - Qiita

こんなの見つけました。もしかしてそろそろ自分でもできるのでは。