サブシステム/プロファイル

JBossは機能をモジュール形式で追加できるような実装になっており、クラスタ機能やメッセージング機能などは拡張機能として本体に追加されています。これらの機能は「サブシステム」と呼ばれ、定義ファイルで利用のON/OFFを切り替えることができます。

JBossには、一般的な用途に応じてサブシステムの定義セットがあらかじめ4パターン用意されており、これらはプロファイルと呼ばれます(表1)。

表1:JBossの4つのプロファイル

default一般的に利用されるシステム向け
haクラスタサーバに必要な機能の定義セット
fulldefaultプロファイルにmessaging機能を追加した定義セット
full-hafull + haの定義セット

独自にプロファイルを定義することも可能ですが、特殊な要件がない場合は4つのうちから1つを選択して利用すれば問題ありません(表2)。

表2:プロファイルに含まれる機能

サブシステムプロファイル
defaulthafullfull-ha
logging○○○○
weld○○○○
configadmin○○○○
security○○○○
ee○○○○
datasources○○○○
ejb3○○○○
infinispan○○○○
jpa○○○○
mail○○○○
jgroups○○
modcluster○○
cmp○○
jacorb○○
jaxr○○
messaging○○

利用方法

JBoss ASのパッケージは、公式サイトからダウンロードすることができます。パッケージを展開するとbinディレクトリに操作用スクリプトがありますので、まず管理ユーザの追加を行います。

# cd jboss-as-7.1.1.Final/bin/
# ./add-user.sh
What type of user do you wish to add?
a) Management User (mgmt-users.properties)
b) Application User (application-users.properties)
(a): a

Enter the details of the new user to add.
Realm (ManagementRealm) : (空欄で構いません)
Username : admin
Password : password
Re-enter Password : password
The username 'admin' is easy to guess
Are you sure you want to add user 'admin' yes/no? yes
About to add user 'admin' for realm 'ManagementRealm'
Is this correct yes/no? yes
Added user 'admin' to file '/opt/jboss-as-7.1.1.Final/standalone/configuration/mgmt-users.properties'
Added user 'admin' to file '/opt/jboss-as-7.1.1.Final/domain/configuration/mgmt-users.properties'

スタンドアロンモードを利用する場合は standalone/configuration/ ディレクトリにある設定ファイルを編集して bin/standalone.sh スクリプトから起動、ドメインモードを利用する場合は domain/configuration/ ディレクトリにある設定ファイルを編集して bin/domain.sh スクリプトから起動するようになります。

過去にJBossを利用されたことのある方であればご存知かと思いますが、以前は散在していた設定ファイルがJBoss AS 7.x/EAP 6.x からは管理モードごとに集約されており、管理が非常に楽になりました。この点もAPサーバとして人気がある一つのポイントではないかと思います。

JBossとTomcatの単体性能比較

アプリケーションサーバ単体でどれくらい性能が異なるのかを確認するために、JBoss EAPとJBoss AS、そしてオープンソースとしてメジャーなAPサーバであるApache Tomcatの3つで、性能を比較してみます。検証内容は、オーソドックスなスループットとレスポンスタイムの比較としました。

検証環境

JBoss EAPとJBoss ASの違いも見てみるために、JBoss EAPは検証実施時点の最新版である6.2、JBoss ASは6.x系のベースとなっている7.1の最新版を利用します。Tomcatについては、現在広く利用されているバージョン7系を利用します。

表3:APサーバのスペック

APサーバOSCPUメモリ
Apache Tomcat 7.0.53CentOS 6.5(x64)1vCPU1GB
JBoss EAP 6.2.0CentOS 6.5(x64)1vCPU1GB
JBoss AS 7.1.1CentOS 6.5(x64)1vCPU1GB

各APサーバへは同じサンプルアプリケーションをデプロイし、クライアント端末上で実行するApache JMeterからサンプルアプリケーションに対してアクセスすることで、負荷をかけます。APサーバ上で稼働するアプリケーションは、SpringフレームワークのデモアプリケーションJPetStore(ショッピングカートアプリ)をベースにしたベンチマークスイートであるJBentoStoreにカスタマイズを施したものを利用しています。

検証環境

図4:検証環境

JBoss EAP、JBoss AS、Tomcatに共通の設定として、同時接続数の最大値を512に設定しました。またJVMパラメータとして以下のパラメータを追加しました。

-Xms512m
-Xmx512m
-XX:PermSize=128m
-XX:MaxPermSize=128m
-XX:NewRatio=2
-Xss1m
-XX:TargetSurvivorRatio=95
-XX:MaxTenuringThreshold=15
-XX:SurvivorRatio=8
-XX:+UseConcMarkSweepGC
-XX:+CMSClassUnloadingEnabled
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing
-XX:+CMSParallelRemarkEnabled
-XX:+UseParNewGC
-XX:+UseAdaptiveGCBoundary
-XX:+UseBiasedLocking
-XX:+OptimizeStringConcat
この記事のキーワード :

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30