1年目の開発のときからシステム構成としてお決まりで登場したApache,Weblogic・・
教えてもらったのは、
Webサーバ:Apache
APサーバ:Weblogic, Tomcat
といわれても結局イメージがわかない
Webサーバは複数スレッドで処理する
APサーバはDBにアクセスして処理したり、プログラムの処理をしている。。。
この2つを立てる構成に何のメリットがあるのか?
昨日の電話で話していたことから、
こんなたとえ話が一番理解しやすかった。
マクドナルドをたとえ話として利用。
①店舗はシステム全体
②お店に来るお客さんはユーザ(システムにリクエストを投げる)
③注文カウンターはWebサーバ
*複数いる店員はスレッド
④キッチンはAPサーバ
*フライヤーやベイカーはモジュール?
複数のカウンタースタッフが客からの注文を聞き、
オーダーをキッチンに投げる。
複数いるので、客の注文の負荷分散をしている。
肉を焼くモジュールや、パンを焼いたり目玉焼きを作るモジュールがある。
複数の処理を行った上で出来たハンバーガーをカウンターに出す。
カウンターの店員が注文の品を客に渡す。
ここで思わぬうまいたとえだったのは、
Webサーバは画像の処理など単純な処理はAPサーバに返さず自分で処理してしまうこと。
これは、カウンターの店員もジュースやポテトを揚げるなど
簡単に出来る作業はカウンターで処理してしまうことに例えられない??
しかし、ユーザ数も少ないシステムだったら、
わざわざこの2サーバの構成にする必要も無いのではないか?
それは、学校の購買部にたとえる。
購買部のおばちゃんが一人でくる学生の注文を処理する。
カウンタもバックエンドもこのおばちゃん一人。
なぜなら、複数スレッド化する必要も無いから。
たとえ話にすると、システム稼働率にあわせてこんな構成の結論が出るけど、
実際はどうなんでしょう?
知ってる人に教えてもらいたい。
システムの話だけだとさっぱりわからず
1年目からこんなもやもやをひきずっていたけど(はい、SE失格です)
たとえ話にするとけっこうすんなり入ってくるものだ。
#正確な処理、機能、特長とかはanother Story
0 件のコメント:
コメントを投稿