ページ 11

ゲームサーバに関して。

Posted: 2011年12月21日(水) 11:47
by 史上最悪のデスペナ
C言語とは少し関係ないかもしれませんが気になったので質問させていただきます。

こちらで「オンラインゲームをつくるには」系の質問に対する回答にはよくCGIという言葉が出てきます。
Wikiで調べてみた結果、それはいわゆるブラウザゲームというのに使われていると解釈したのですが
ブラウザゲームじゃないゲームはどのように動いているのでしょう?

私はてっきり、
サーバー用のPCがあり、その中でチャット送受信プログラム、ダメージ計算プログラムなどが動いていてその結果をクライアントとやり取りしている
と思っていたのですがどうなんでしょう?

また、上記の考えが正しかった場合、レンタルサーバは可能なのでしょうか?レンタルサーバではCGI可能というのはよく見ますが。
私にとってレンタルサーバというのは仮想のものであり、自分で実際に操作してるわけではないのでCGIが動くことですら実感が全然わきません。

Re: ゲームサーバに関して。

Posted: 2011年12月21日(水) 12:39
by softya(ソフト屋)
CGIはApacheなどのWebサーバ上で動作するWEBアプリケーションの仕組みのことです。
HTTPリクエストなどでプログラムが起動して何らかの情報を返却する仕組みになっています。
史上最悪のデスペナ さんが書きました:こちらで「オンラインゲームをつくるには」系の質問に対する回答にはよくCGIという言葉が出てきます。
Wikiで調べてみた結果、それはいわゆるブラウザゲームというのに使われていると解釈したのですが
ブラウザゲームじゃないゲームはどのように動いているのでしょう?
かばさんの例に上がっているゲームにあるようにCGIはブラウザゲームじゃなくても利用は可能です。他にはオリジナルのWEBAPIとして運用するとか。
本格的なMMORPG系ならApacheなどのWebサーバを使わずにC/C++でsocket通信系を使って完全オリジナルのゲームサーバが動いているはずです。この場合は必要に応じてTCP/IPやUDPのプロトコルを使い分けています。
史上最悪のデスペナ さんが書きました:私はてっきり、
サーバー用のPCがあり、その中でチャット送受信プログラム、ダメージ計算プログラムなどが動いていてその結果をクライアントとやり取りしている
と思っていたのですがどうなんでしょう?
チャット送受信プログラム、ダメージ計算プログラムぐらいだったらCGIでも問題ないですね。
史上最悪のデスペナ さんが書きました:また、上記の考えが正しかった場合、レンタルサーバは可能なのでしょうか?レンタルサーバではCGI可能というのはよく見ますが。
私にとってレンタルサーバというのは仮想のものであり、自分で実際に操作してるわけではないのでCGIが動くことですら実感が全然わきません。
レンタルサーバにも色々有って、CGIのみ可のものとかVPSサーバーやクラウドサーバのようにOSレベルからいじれるものまであります。
OSレベルからいじれるのなら、どんなオリジナルなサーバでも起動できますね。

オリジナルのゲームサーバを作るならLinuxの設定・運用からセキュリティ、Linuxでのプログラミング、Linuxでのsocketプログラミングまでも思えたほうが良いと思います。

「Geekなぺーじ:Linuxネットワークプログラミング」
http://www.geekpage.jp/programming/linux-network/

【補足】自宅サーバならWindowsでも良いのですが24時間稼働すると相当な電気代になります。夏の冷房代も馬鹿になりません。
それと自宅だとインターネット回線の上り側の速度が貧弱な場合が多いので、光の出来るだけ良い契約に見直さないと速度が出ない可能性があります。上り下りが同等な速度が望ましいです。
そういう事を考えるとレンタルサーバが有利なことが多いです。

Re: ゲームサーバに関して。

Posted: 2011年12月22日(木) 08:41
by 史上最悪のデスペナ
ん~よく分かりません^^;とりあえずじっくり読んでみます。