- ベストアンサー
C#での開発環境について教えてください
- C#での開発環境について初心者でもわかるように解説します
- WebサーバーとAPサーバーの違いや役割について説明します
- VisualStudio 2008とSQLServer2005を使用したC#開発の基本的な流れを説明します
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
遅レスすいません >何で、Webサーバーを使用しないといけないのでしょうか? 前の方の回答と同じなんですが、使う場合のメリットと使わない場合のデメリットっていうのが大きいと思います。 ・クライアントのソフト開発をしなくてすむ ・ブラウザクライアントなのでプラットホーム(MacとかWinとか)を気にしなくて良くなる ・アプリサーバをネットに直にさらさなくてすむ(Webサーバはネットへの耐性ができている) ・開発のノウハウが巷にあふれている というところでしょうか。 別に、クライアントのプラットホームやサーバアプリケーションを作れば、Webサーバはたしかに要らないのですが、開発コストや期間を考えるとあるものを流用したほうが話は早いってことですね。 ただ、開発時はともかく保守運用は結構めんどくさいことになるケースが多いですね。 ・使い捨てソフトみたいなスタンスになりがちでまともなドキュメントを作らないことが多い ・ブラウザやサーバのバグであっても対応させられる ・初期開発陣はつぎの仕事で面倒見られない(っていうかそれを理由にしていて実は見たくない) ・開発時に新技術をやたら使いたがる(スキルアップのためクライアントを人柱に・・・)ので流行りすたりで運用中にライブラリやツールがこの世から消える すいません、最後は愚痴みたいになっちゃいました。
その他の回答 (2)
>何で、Webサーバーを使用しないといけないのでしょうか? 昔、クライアント/サーバ型システムでは、クライアント側にも開発した実行モジュール(EXEファイル類)を置いていました(今でもそういうシステムは存在しています)。 クライアント側に実行モジュールを置くと、バージョンアップやバグ対応の際に、システムを利用する全端末にモジュールを配布するというコストが発生する為、その為の仕組みを作る必要があります。 一方、クライアントに元からある Web ブラウザを利用すれば、配布の事を考慮する必要がなくなります。Webサーバー側・Apサーバー側のシステムだけ置き換えればよい為です。 そこで、元々インターネット用途だったWebサーバーを利用して、システムを構築しようという発想が生まれました。
お礼
回答ありがとうございます。 要は保守のためとかそういうことなんですね。 確か、メタサーバというのも聞いたことがあります。 これはクライアント側におけるWebサーバーみたいなもの?ということになるんですかね? ありがとうございました。
- ralf124c
- ベストアンサー率52% (232/446)
本来、Webサーバはクライアントによって要求されたホームページファイルをたれながすだけのものでしか有りません。 それに対してASPや.NET、CGI、PHPなどは、基本的なWebサーバの持つ機能以上の機能をアプリケーションを介して提供するものです。 セキュリティやサーバスペックが万全なら同じサーバ上で動作させることもコスト的には良いのですが、リスクは非常に高くなります。 Webサーバは外部から直接アクセスされるものですので、悪意を持った者を含む様々な進入にさらされることになります。そこにアプリが動かせるサーバまたはDBサーバを置いたとしたら、極論を言えば外部からアプリが動かせるサーバすなわち外部からサーバを破壊するアプリ(例えばハードディスクフォーマットなど)をも動作させる可能性やDB情報を直接抜き取られる可能性を秘めていることになります。 作り方しだいですが、前段に機能が限定された悪さが困難なサーバを置くことによって、外部からの攻撃に耐えることができます。 また、1台のサーバにWebもアプリも動かせているとアクセス量が増えれば処理もその分多くなります。Webの処理をするものと、アプリを動かすものとで分けることで負荷が分散され、処理を円滑に行うことができるようになります。 WindowsサーバはGUIを搭載しているためただでさえマシンへの負荷が多少高いという上に、メジャーOSゆえの外部からの攻撃もまた半端では有りませんので、設計構築に関しては慎重な対応が必要です。 まとめると ・外部から直接危険な行為がされないように大事なものは後ろに隠す ・処理による負荷を分散させる ・構築時の責任分担が明確になる ・ハードウェア障害時の被害を分散し対応を簡素にできる。 という点でしょうか。 わたくしの文章がつたないので理解できなかったらすいません。
お礼
返答ありがとうございます。 webサーバーとAPサーバーを分けた方がセキュリティ的、パフォーマンス的にもいいという事が分かりました。 それでなんですが、何で、Webサーバーを使用しないといけないのでしょうか? Webサーバーを使用しなければ、セキュリティ的な部分は問題ないような気もしますが・・・ すいません。 本当にまだ、勉強をし始めたばかりなので、根本的な部分が分かっていないもので、すごい基本的な ことを聞いてしまっているかもしれませんが、もしよかったらご回答お願いいたします。
お礼
とにかく開発を楽にするためなんですね・・・ なるほど、分かりました。 丁寧な説明ありがとうございました。