>サービス毎に(要するに対局1件毎に)別プロセスを起動するってのは UNIX 系では
>一般的手法と思う。
それはそうなんですが、たいやきさんの主張は以下なので、
「Servletを使ったとき」を想定しなければいけないでしょう。
>というのはJavaでサーバを動かすときには、servletを使うことが出来ますが、
>その場合はマルチにインスタンスが作れなくても(1つしかつくれなくても)、
>オンラインオセロのようなゲームは作れるためです。
Servletそのもののインスタンスは(少なくとも通常は)全体でひとつなので、
複数対戦をホストしたければBoardのインスタンスを複数作って
セッション等からそれを参照するように作るのが自然なように思います。
>俺なら「盤面は先読み1手につき1個必要」と例示するかな・・・
>再帰深さ1段につき盤面1個を要するってことで。
これはわかります。私が作ったプログラムでも実際にそうなっています。
http://kmaebashi.com/javaworld/index.html
ただ、これを理解するにはオセロの思考ルーチンに対する理解がある程度必要で、
そうなると本筋から離れてしまいますから、「複数対戦をホストするため」という
ことにしました。
ただ、公開当時も「複数対戦をホストするなら、自分ならプロセス分ける」という
方もいらっしゃって、「思考ルーチンで先読みするためにも使いますし」と答えたら
「それなら納得できます」と言われたので、このあたり、どのような説明なら
納得できるかは個人差がありそうです。