復習日記

勤務時間内で理解できなかったことやつまづいたことをまとめていく予定。

wildflyのstandaloneとdomainモードの違い

standaloneモード

名前の通り1台構成

設定ファイルはstandalone-*.xmlに記述。

domainモード

  • ドメインコントローラ⇒管理プロセス

  • ホストコントローラ×N⇒サーバープロセス

ドメインコントローラを操作するだけで、それに従属する複数のホスト(サーバー)を管理できますよーという仕組み。

ドメインで共通の設定はdomain.xmlに記述。設定内容はstandalone-*.xmlとだいたい同じになる。

ホスト毎に違う設定はhost.xmlに記述。

あと大きく違うのは、デプロイの方法。

standaloneでは、Deployment Scanner(デプロイメントスキャナ)という設定が入ってる。

<subsystem xmlns="urn:jboss:domain:deployment-scanner:2.0">
    <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000"/>
</subsystem>

これは、$JBOSS_HOME/standalone/deploymentsディレクトリを 5 秒間隔でスキャンして、何か変更があればデプロイするというものです。

standaloneモードではdeploymentsディレクトリにwarを配置するだけでデプロイしてくれますが、domainモードではそういうことできない。CLIやwebの管理コンソールからデプロイしなきゃならない。

ときどきローカルでeclipsenetbeans使って開発してるとき、wildflyがうまく動かなくなるのは、このデプロイメントスキャナの挙動が原因じゃないかな、と思ってたりする。