WAS6.0(体験版)用 単なる起動スクリプト
環境
- CPU:Pentium4-3Ghz
- Mem:1GB
- OS :Windows2000 Professional SP4
IBM WebSphere Application Server6.0 こと WAS6.0の体験版を使ってみました。
(ちなみにWindowsサービスとしてはインストールしていません)
これまではTomcatを扱うことが多かったのですが、WASはかなり重いですね・・・。
まぁ両者はカテゴリが違うので、この2者を比較すること自体が適切ではありませんが。。
それは置いておくとして、実際に使用した結果、私の環境(Pentimu4-3Ghz/Memory-1GB)でのサーバの起動時間は
・Tomcat5.0.28:数秒
・WAS6.0Trial+fix6.0.0.3:1分以上
でした。
何とか起動が早くならないかなぁ・・・といろいろ試してみましたがいまひとつ結果に結びつかず。
その最中に起動スクリプトを追ってみたものの、呼び出しの階層が深く、どこに手をつけていいかがよくわからず・・・とりあえず、一発で起動できるスクリプトを作ってみよう、ということで作ったのがコレです。
SET WAS_HOME=C:\WebSphere
SET APPSERVER_NAME=AppServer
SET CELL_NAME=HOSTNAMENode01Cell
SET NODE_NAME=HOSTNAMENode01
SET SERVER_NAME=server1REM # ヒープメモリ設定
REM # -Xms 初期ヒープサイズ(全体)
REM # -Xmx 最大ヒープサイズ(全体)
SET HEAPMEM_XMS=50m
SET HEAPMEM_XMX=256mREM ##### ドライブレター取得
FOR /F "usebackq tokens=*" %%I IN (`ECHO %WAS_HOME%`) DO SET TARGET_DRIVE=%%~I
FOR /F "usebackq tokens=*" %%I IN (`ECHO %TARGET_DRIVE%`) DO SET TARGET_DRIVE=%TARGET_DRIVE:~0,2%REM ##### 作業ディレクトリへ移動
%TARGET_DRIVE%
CD "%WAS_HOME%\%APPSERVER_NAME%\profiles\default""%WAS_HOME%\AppServer\java\bin\javaw.exe" ^
"-Duser.install.root=%WAS_HOME%/%APPSERVER_NAME%/profiles/default" ^
"-Dserver.root=%WAS_HOME%/%APPSERVER_NAME%/profiles/default" ^
"-Dwas.install.root=%WAS_HOME%/%APPSERVER_NAME%" ^
"-Dcom.ibm.itp.location=%WAS_HOME%/%APPSERVER_NAME%/bin" ^
"-Dws.ext.dirs=%WAS_HOME%/%APPSERVER_NAME%/java/lib;%WAS_HOME%/%APPSERVER_NAME%/profiles/default/classes;%WAS_HOME%/%APPSERVER_NAME%/classes;%WAS_HOME%/%APPSERVER_NAME%/lib;%WAS_HOME%/%APPSERVER_NAME%/installedChannels;%WAS_HOME%/%APPSERVER_NAME%/lib/ext;%WAS_HOME%/%APPSERVER_NAME%/web/help;%WAS_HOME%/%APPSERVER_NAME%/deploytool/itp/plugins/com.ibm.etools.ejbdeploy/runtime" ^
"-Xbootclasspath/p:%WAS_HOME%/%APPSERVER_NAME%/java/jre/lib/ext/ibmorb.jar;%WAS_HOME%/%APPSERVER_NAME%/java/jre/lib/ext/ibmext.jar -Xms%HEAPMEM_XMS% -Xmx%HEAPMEM_XMX%" ^
"-Djava.util.logging.manager=com.ibm.ws.bootstrap.WsLogManager" ^
"-Djava.util.logging.configureByServer=true" ^
"-Dibm.websphere.preload.classes=true" ^
"-Djava.library.path=%WAS_HOME%/%APPSERVER_NAME%/java/bin;%WAS_HOME%/%APPSERVER_NAME%/bin;%WAS_HOME%/%APPSERVER_NAME%/java/bin;%WAS_HOME%/%APPSERVER_NAME%/java/jre/bin" ^
"-Dcom.ibm.CORBA.ConfigURL=file:%WAS_HOME%/%APPSERVER_NAME%/profiles/default/properties/sas.client.props" ^
"-Dcom.ibm.SOAP.ConfigURL=file:%WAS_HOME%/%APPSERVER_NAME%/profiles/default/properties/soap.client.props" ^
-Dwas.debug.mode=true -Djava.compiler=NONE -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7777 ^
-Xquickstart ^
-Xverify:none ^
-classpath "%WAS_HOME%\AppServer\properties;%WAS_HOME%\AppServer\lib\bootstrap.jar;%WAS_HOME%\AppServer\lib\j2ee.jar;%WAS_HOME%\AppServer\lib\lmproxy.jar;%WAS_HOME%\AppServer\lib\urlprotocols.jar" ^
com.ibm.ws.bootstrap.WSLauncher ^
com.ibm.ws.runtime.WsServer ^
"%WAS_HOME%\%APPSERVER_NAME%\profiles\default\config" "%CELL_NAME%" "%NODE_NAME%" "%SERVER_NAME%"ECHO 起動処理 終了
- このスクリプトを使用するに当たって
- このスクリプトについて
起動時間はあまり変わらないかもしれませんが、管理コンソールの動作やデプロイの処理は軽くなったような気がします。
JBoss4.0 のセットアップ on FedoraCore5
zipアーカイブを展開して配置するだけでもセットアップは完了するのですが、その方法は多くのサイトで説明されているので、ここではGUIインストーラを使用してのJBossセットアップを行ってみます。今回は、JBoss 4.0.3 SP1 を使用します。
調査中のところもあるので、間違いがあればツッコミお願いいたします。
環境
- Fedora Core 5(x86-32bit)
備考
セットアップ手順
- JDKのインストール
- Java1.4 または 1.5 がインストールされている必要があります。コマンドラインから「java -version」を入力して確認します。
- EJB3を利用するには Java1.5が必要です。また、AOPなどでアノテーションを利用するにも必要ですから、問題が無ければ、Java1.5をセットアップしておきましょう。
- ここでは、Sunの J2SE5.0のJDK(1.5.0-06)を「/usr/local/jdk1.5.0_06」へセットアップしています【参考】
- JBossのサイトから最新のアーカイブをダウンロードします。
- (今回は「4.0.3 SP1」のインストーラ「jboss-4.0.3SP1-installer.jar」をダウンロードします)
- JBossインストーラの起動
- このインストーラはWindowApplicationなので、ウィンドウマネージャから起動します。
- GNOME端末などを起動し、以下のコマンドを実行します
- すると、以下の画面が表示されます。
-
- デフォルトで「jpn」が選択されていると思いますので、そのまま「OK」を押します。
-
- 「次へ」を押します。
-
- 「ライセンス利用許諾に同意します」を選択し「次へ」を押します。
-
- インストール先に特に問題が無ければ、そのまま「次へ」を押します。
-
- 確認メッセージが表示されるので、問題が無いことを確認し「了解」を押します。
-
- どのインストールタイプを選ぶかは任意ですが、ここでは「all」を選択し「次へ」を押します。
-
- インストールされるコンポーネントの詳細が表示されます。とりあえず全部入れてみるので、そのまま「次へ」を押します。
-
- コンフィグレーション名を設定します。ここではデフォルトの設定(default)を使用しますので、そのまま「次へ」を押します。
-
- ここまでの選択内容がサマリ表示されます。問題が無ければ「次へ」を押します。
-
- インストールが開始されます
-
- インストールが完了しましたので「次へ」を押します。
-
- インストールが正常に終了しましたので「FinishPanel.done」を押しインストーラを終了させます。
- JBossの実行用アカウント作成
- JBossの起動確認
- 以下のコマンドで、JBossを起動します
- 「Started in 1m:30s:149ms」といったようなメッセージが表示されれば起動完了です。
- WEBブラウザで「http://localhost:8080/」にアクセスし、以下のようなページが表示されることを確認します。
- JBossの終了
- 以下のコマンドで、JBossを停止します
- $ sh shutdown.sh --shutdown
- 以下のコマンドで、JBossを停止します
J2SE 5.0 JDK のセットアップ on FedoraCore5
脱RPM中。rpmを使わずにJDKをセットアップしてみましょう。
環境
- Fedora Core 5(x86-32bit)
- rpmは使わずに、バイナリインストールします
注意
セットアップ手順
- JDK 1.5 のダウンロード
- インストール先は任意ですが、今回は「/usr/local」以下に配置します。「/opt」やその他でも構いません(環境変数(PATH や JAVA_HOME)の設定が変わるだけです)。
- Sunのサイトの「JDKのダウンロード」をクリックします。
- 「Required: You must accept the license agreement to download the product.」の項目で「Accept」をクリックします。
- 「Linux Platform - J2SE(TM) Development Kit 5.0 Update 6」の「Linux self-extracting file」からアーカイブをダウンロードします。
- 2006/04/26 時点のアーカイブは「jdk-1_5_0_06-linux-i586.bin」です。
- ダウンロードしたファイルを「/usr/local」に配置します。
- wget コマンドでアーカイブを取得する場合は、以下のコマンドを実行します。
- インストール
- # /bin/sh ./【保存したファイル名】
- 上記コマンドを実行すると
- 「Sun Microsystems, Inc. Binary Code License Agreement ・・・」
- のように表示されるので、最後までスクロールし
- Do you agree to the above license terms? [yes or no]
- と表示されたら「y」を入力し、Enterを押すとアーカイブの展開が始まります。
- 「Done.」と表示されれば展開終了です。
- 今回は「/usr/local/jdk1.5.0_06」に配置されたことになります。
- ダウンロードしたアーカイブは、不要なら消して下さい。
- 環境変数の設定
- 確認
Oracle 10g Database R2 セットアップ時のエラー
環境
- WindowsXP Professional SP2
- J2SE JDK 1.4.2_11 インストール済み
- ここに米Oracleサイトからダウンロードした「Oracle Database 10g Client Release 2 (10.2.0.1.0)」(10201_client_win32.zip)を展開してセットアップ。
- ↑ちなみに、ユーザ登録(無料)が必要。
問題
- インストール処理の最後で実行される構成処理(Net Configuration Assistant)で固まる。
- そのまま待っているとエラーで停止するが、処理を取り消して終了すると、正常にセットアップされない
- ↑tnsping などを実行すると、メッセージファイルが見つからない旨のメッセージが出るので。
- (9iのときは、インストールとコンフィギュレーションは別々だった気がしたのだが・・・10gはコンフィギュレーションもパスしないとだめらしい)
- なお、固まっている最中のCPU使用率はほぼ100%を維持。
原因
MySQL(バイナリ)セットアップ(on FedoraCore5)
FedoraCore5 への MySQL5.0.20 インストール
rpmでのインストールは色々と情報があるようなので、あえてバイナリでのセットアップをしてみた。
環境
- Fedora Core 5(x86-32bit)
セットアップ手順【参考】
$MYSQL = '/usr/local/mysql/bin/mysql'; # path to mysql executable
起動・停止
接続
- MySQLへの接続
- DBユーザの作成
- ↓ユーザ「hogehoge」をの作成
- mysql> grant all privileges on *.* to hogehoge@localhost identified by 'hogehogeのパスワード' with grant option;
- mysql> flush privileges;
- 「all privileges」で全ての権限を有するように指定
- 操作を限定したい場合は「SELECT/INSERT/UPDATE/DELETE」のうち必要なものをカンマ区切りで列挙する
- ex) grant SELECT,INSERT
- 操作を限定したい場合は「SELECT/INSERT/UPDATE/DELETE」のうち必要なものをカンマ区切りで列挙する
- 「on *.*」で「全てのデータベース」の「全てのテーブル」が対象となる
- 「to hogehoge@localhost」で「localhost」から接続した場合の「hogehoge」ユーザの設定 となる
- 全てのホストからの接続を対象としたい場合は「@localhost」と「@"%"」で、2通り登録する必要があるらしい
- 「by identified '〜'」で、このユーザのパスワードを設定
- 「with grant option」で、このユーザが GRANT句を実行できるように設定
- 「flush privileges;」で権限を反映しなおす(ようだ)。
- 「all privileges」で全ての権限を有するように指定
- データベースの作成(必要に応じて)
- MySQLとの接続を解除する
- mysql> quit
Tips
JBoss セットアップ
これまでは主にTomcatを使っていましたが、先を見据えてJBossにも手を出すことにしました。
簡単にセットアップまで。
環境
- Windows XP Professional SP2
- CPU:Pentium4 2.53GHz
- Memory:1024MB
セットアップ手順
- JDKのインストール
- JBoss のダウンロード
- JBoss.org のサイトからアーカイブをダウンロード。ここでは「JBoss Application Server」の 4.0.3SP1(jboss-4.0.3SP1.zip)を使います。
- ダウンロードしたファイルを解凍し、「C:\jboss-4.0.3SP1」に配置します。
- JBossの実行
- C:\jboss-4.0.3SP1\bin\run.bat を実行します。
- 起動したコマンドプロンプトで「Started in xxs:xxxms」(xは数値)と表示されれば、起動完了です。*1
- ブラウザで「http://localhost:8080/」にアクセスして、ページが表示されればOKです(デフォルトのポートは8080番)。
簡単ですねー。Tomcatより難しいんだろう・・・というのは単なる思い込みでした。
*1:なお、起動中に「Port already in use: 1098」というようなエラーが出ることがありますが、その場合は起動に失敗しています。私の場合は1098番でぶつかりましたが、原因はMSNMessengerとの競合でした。また、ブラウザを複数立ち上げているとそういうこともあるようです。参考:d:id:mir:20060112:p2