- - PR -
Tomcatをクラスタリングしてインメモリーでデータを共有する方法?
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-11-08 14:32
現在複数のサーバーにTomcatをインストールし、それぞれクラスタリングの設定を行い。
H2 Databaseをインメモリーで使用しデータの共有を行いたいと考えています。 どのように設定を行えば良いか、お伝授いただたきたいと思います。 また、それに変わるような方法がありましたら合わせてお伝授いただたきたいと思います。 OS:CentOS5 AP:Tomcat6 | ||||
|
投稿日時: 2007-11-08 17:54
Tomcat用のJVMごとにH2Databaseが動いているということですよね。 それだと、クラスタ間のH2同士のデータ同期が難しいと思うので、 H2はどこかのサーバで上げて、各Tomcatからネットワーク経由(JDBC) で繋ぐ方が一般的かと思いますよ。データベース間の同期に多少時間 がかかってもいいから、レスポンスを上げたい場合は採る可能性のある 構成ではありますがね。ま、その場合でもデータベース使わないで キャッシュ処理でやっちゃった方が楽で速いとは思います。 | ||||
|
投稿日時: 2007-11-08 17:57
通常のクラスタ機構では、セッションの値のみが同期されます。
個別にDBサーバを用意した方がよいでしょう。 | ||||
|
投稿日時: 2007-11-08 22:43
小僧様、かつのり様
ご意見を頂き本当にありがとうございました。 私が行いたいことですが、あくまでもネットワーク経由(JDBC)をせずに うまくデータベースのデータを各サーバーで情報を共有したいというのがあります。 H2 DatabaseのインメモリーDBとH2 Database DBサーバーのクラスタリングを行うことで対応できますでしょうか? Oracle TimesTen In-Memory DatabaseとOracle Databaseで対応出来ますでしょうか? 何か良い方法、方式がありましたらご伝授いただきたいと思います。 よろしくお願いいたします。 [ メッセージ編集済み 編集者: よし 編集日時 2007-11-08 22:45 ] | ||||
|
投稿日時: 2007-11-09 11:31
Oracleの方は存じ上げないですが、H2のドキュメントには > Clustering can only be used in the server mode と書かれていて、設定例を見てもJDBC経由での使い方みたいですので、 インメモリで同期するのは無理だと思いますよ。 | ||||
|
投稿日時: 2007-11-11 19:13
小僧さん
アドバイスありがとうございました。 MySQLのレプリケーション機能で対応することにしました。 |
1