[BPM, WebCenter] BPM Process Portal Configuration on WebCenter 11g PS4

BPM Process Portalの作成方法に関する、一連のAndreiusのエントリをご覧になったことがあるかもしれません。

BPM Portal 11g PS3 - How To Configure Oracle BPM 11g PS3 Process Portal on Oracle WebCenter Spaces 11g PS3
http://andrejusb.blogspot.com/2011/02/bpm-portal-11g-ps3-how-to-configure.html

詳細な説明があるにもかかわらず、PS4とPS3では異なる挙動を示しました。また、エントリに従って設定しているといくつかの問題に直面しました(そのうちの一つはPS3での既知の問題でした)。
そのため、Process Portalを適切に構成するためのインストール・構成手順をまとめることにしました。セットアップした環境は、WebCenter 11gR1 PS4のドメインで、ECMとSOAテクノロジー用にドメインを拡張しています。事前のSOA Suiteのセットアップは不要ですが、UCMは必須です。それでは手順を進めていきましょう。

構成の手順

WebCenterコンポーネントの構成

1) UCMの以下の機能を有効にしておきましょう。
  • DynamicConverter
  • Folders_g
  • WebCenterConfigure
UCMにアクセス(http://<ucm_server>:16200/cs)し、[管理] > [管理サーバ] > [コンポーネント・マネージャ]へと遷移し、これらのコンポーネントを有効にします。

2) UCM_server1を起動します。

3) Dynamic Converterをセットアップしましょう。
メインページで、[管理] > [Dynamic Converterの管理] > [構成設定] > [変換フォーマット]に移動し、ドロップダウンリストからファイル形式(Word、Excel、PowerPoint、PDFなど)を選択します。HTML表示させたいものを全て選択して下さい。

WebCenterドメインをOracle BPM Spacesテンプレートで拡張する
1) WebCenterドメインの管理サーバ、管理対象サーバを停止します。
2) WebCenterドメインをドメイン構成ウィザードにより拡張します。
<MIDDLEWARE_HOME>/Oracle_WC1/common/bin/config.sh (Windowsならconfig.cmd)

3) ドメインを選択します。


4) <MIDDLEWARE_HOME>/Oracle_WC1/common/templates/applications/oracle.bpm.spaces_template_11.1.1.jarをテンプレートに選択します(既存の拡張テンプレートを使用)



5) プロセスが終わるまで「次へ」を押します。

6) 管理サーバ、他の管理対象サーバ(UCM_server1、WC_Collaboration、WC_Spaces)を再起動します。

Process Portalのスクリプトを実行する

1) Java 6を使っていることをjava -versionで確認しておきましょう。

2) 次の管理サーバ、管理対象サーバを起動します。
  • AdminServer
  • WC_Collaboration
  • UCM_server1
  • WC_Spaces
3) <MIDDLEWARE_HOME>/Oracle_SOA1/bpm/processportalへ移動し、portal-process.propertiesファイルを環境に合わせて編集します。参考ファイルはこちらからダウンロードできますので、こちらを使って編集されることをお勧めします。
下表は上記ファイルのエントリを説明したものです。


プロパティ名意味
extendSoa既存のBPMドメインを拡張したり、新規作成するかどうかを決定するフラグ。 WebCenterおよびSOAを同一ドメインに配置する場合はTrueに、それ以外はfalseに指定。
promptForPasswordsインストーラ実行中にパスワードの入力を要求させるか、process-portal-install.propertiesファイルから読みこむを指定するフラグ。
Oracle BPM Schema
bpmDBUserOracle BPM用データベース接続ユーザ名
bpmDBPasswordOracle BPM用データベースに接続するユーザのパスワード
bpmDBTypeOracle BPMのデータベースタイプ
bpmDBDriverOracle BPM用のデータベースに接続するためのドライバ
bpmDBUrlOracle BPMのデータベースURL
(例)jdbc:oracle:thin:@adc2170307:1521
Oracle BPM MDS
bpmMDSUserOracle BPMで使用する、MDSスキーマのユーザ名
bpmMDSPasswordOracle BPMで使用する、MDSスキーマのユーザのパスワード
Oracle BPM Runtime Details
bpmHostOracle BPMのインストール先のホスト名
bpmRuntimePortOracle BPMのポート番号
bpmAdminUserSOAサーバの管理者権限を持つユーザ名
bpmAdminPasswordOracle BPMの管理者ユーザのパスワード
WebCenter Spacesインストール
wcOracleHomeWebCenterのOracleホームディレクトリ
wcDomainNameWebCenterのドメイン名。extendSoaがtrueの場合、BPMドメインを指定する。
wcSetDomainRealmPasswordドメインレルムのパスワードを設定するか否かを制御するフラグ。trueもしくはfalseで設定する。
(注意)このプロパティはGlobal Trustを設定するために使用しますが、このプロパティを有効にしないことを推奨します。Global Trustを手で設定して下さい。
wcDomainRealmPassword信頼ドメインを設定するためのパスワード。Oracle BPMドメインと同じパスワードを設定すること。
wc.server.port管理対象サーバWC_Spacesがホストされているポート番号
WebCenter用WebLogic Serverインストール
wcHostWebCenter管理サーバが動作しているホスト名
wcAdminPortWebCenter管理サーバのポート番号
wcAdminUserWebCenter管理サーバの管理ユーザ
wcAdminPwdWebCenter管理サーバの管理ユーザのパスワード
wcManagedServerNameWC_Spaces管理対象サーバのサーバ名
wcConfigServicesOracle Content ServerとDiscussion Serverを構成して、Oracle WebCenterとともに動作させるためのフラグ。この表の下部に記載しているContent ServerとDiscussion Serverの詳細は、wcconfigServicesがtrueの場合に限って指定する。
(注意)Oracle Content ServerとDiscussion Serverを手で構成して、Oracle WebCenterと連携させることを強く推奨する。
Content ServerwcConfigServicesがtrueの場合に設定
wcContentServerNameOracle WebCenter向けに構成したContent Serverの名前
wcContentServerPortContent Serverのポート番号
wcContentSpacesRootContent ServerのSpacesのルートフォルダ名
wcContentAdminUserContent Serverの管理ユーザ名
Discussion ServerwcConfigServicesがtrueの場合に設定
wcDiscussionServerUrlOracle WebCenter向けに構成したDiscussion Serverの名前
wcDiscussionAdminUserDiscussion Serverの管理者ユーザ名

4) 次のスクリプトを実行します。
<MIDDLEWARE_HOME>/modules/org.apache.ant_1.7.1/bin/ant -f install.xml

5) 前のスクリプトは管理対象サーバWC_Spacesを停止しますので、再起動します。他の管理対象サーバがクラッシュするかどうか確認することをお忘れ無く。もしクラッシュした場合には、停止した管理対象サーバを再起動しましょう。

6) process-portal.propertiesファイルを開いて、extendSoaとwcConfigServicesの両プロパティをtrueからfalseに変更します。

7) 新しいパラメータを追加して、前のスクリプトを実行します。
$MIDDLEWARE_HOME/modules/org.apache.ant_1.7.1/bin/ant -f install.xml -DpiArgs="-importGSOnly"

8) 7)で管理サーバと管理対象サーバWC_Spacesが停止しますので、再起動しましょう。他の管理対象サーバが問題なく動作していることを確認して下さい。3)、6)で述べたスクリプト実行中に何か例外が発生している場合、修正してから先に進んで下さい。

9) 先のスクリプトにより、ロールが追加されていることを確認しましょう。UCMにログインし、[管理] > [管理アプレット] > [ユーザー管理] に移動すると、ProcessPortalグループと、ProcessPortalUserロールが追加されているはずです。
image image

WebLogic管理コンソールでも、ProcessPortalUserグループを確認できるはずです。ただ、私の環境では「どういうわけか自動的に」プロビジョニングされなかったので、手で追加しましたが…。

10) フォーラムも使えるようになっているか確認しましょう。これも私の環境では各Space(Process WorkspaceとModeling Space)を新しく作成するように手動セットアップしなければなりませんでした。
  1. WebLogic Serverにログイン
  2. [管理]をクリック
  3. Process WorkspaceもしくはModeling Workspaceを選択
  4. [編集] > [Spaceの編集]をクリック
  5. [Services]タブで、[Announcesments]をクリックし、拡大鏡をクリック。Discussionについても同様のことを実施。

11) WebCenter Spacesに管理者アカウント(weblogicなど)でログインし、Process WorkspaceとModeling SpaceをBPM利用ユーザー向けに有効化しましょう。

最後に、BPMユーザー(例えばjcooper)でログインし、Process WorkspaceとModeling Spaceが動作していることを確認しましょう。


Process Portalの詳細は、以下のドキュメントを参照して下さい。この手順でうまくいったかどうかを、原文のコメント欄に残して頂けると幸甚です。


Oracle® Fusion Middleware User's Guide for Oracle Business Process Management
11g Release 1 (11.1.1.5.0)
9 Getting Started with Process Spaces
http://download.oracle.com/docs/cd/E21764_01/user.1111/e15175/bpmug_pp_gt_strt.htm


原文はこちら。
http://blogs.oracle.com/ATEAM_WEBCENTER/entry/bpm_process_portal_configuration_on

[Solaris] Creating an IPMP Group on Solaris 11

Solaris 11は、Project Crossbowの形でいくつかの素晴らしい新しいネットワーキング機能を提供しています。

Crossbow: Network Virtualization and Resource Control
http://hub.opensolaris.org/bin/view/Project+crossbow/WebHome

これらの機能には、仮想NIC(vNIC)、 仮想スイッチ(etherstubs), 帯域幅の制御やネットワーク利用や詳細分析・監視機能のためのflowを含みます。これらの先進的な新機能とともに、以前からのお気に入りの機能の多くは、多忙なシステム管理者が楽になるように拡張されています。

/etc/hostname.*ファイルを修正してIPマルチパスグループを作成するのはもう過去のことです。 Solaris 11では新しいコマンド(ipadm)が導入されており、面倒なIPMPの設定が簡単になりました。
root@dinkum:/# ipadm create-ipmp ipmp0
root@dinkum:/# ipadm add-ipmp -i e1000g1 -i e1000g2 ipmp0
実に簡単ですね。

原文はこちら。
http://blogs.oracle.com/unixben/entry/creating_an_ipmp_group_on

[Database, PHP] Oracle 11.2 XE with newly updated PHP Developer's Guide is available

Oracle Database 11gR2 Express Edition (XE)がリリースされました。現在利用可能なのは、Windows 32bitとLinux 64bitです。Windows 64bitは「現在作業中」のようですが、Linux 32bitはリリース予定なし、ということのようです。

Oracle Database Express Edition 11g Release 2
http://www.oracle.com/technetwork/database/express-edition/overview/index.html

11gR2 XEがリリースされたことに伴い、「Oracle Database Express Edition 2 Day + PHP Developer's Guide」がアップデートされました。HTML、PDFでご覧頂けるとともに、マニュアルはMobiePubでご覧頂けます。

Oracle Database Express Edition 2 Day + PHP Developer's Guide
http://download.oracle.com/docs/cd/E17781_01/appdev.112/e18555/toc.htm

この「2 Day + PHP マニュアル:では、PHPのインストール手順から、入門アプリケーションの作成方法までを案内しています。Oracle XEとの対話方法や、PHP 5.3の機能を紹介します。

サンプルでは、DBとの対話の仕組みを紹介しています。アプリケーションを最初から構築するので、高性能なアプリケーションの構築方法について理解できます。このガイドを終了した後は、 Oracle 11g XEを使って、Developing a PHP Web Application with Oracle Database 11g に進まれてはいかがでしょうか。

Developing a PHP Web Application with Oracle Database 11g
http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/oow10/php_webapp/php_webapp.htm

Oracle 11.2 XEのLinuxインストーラはRPMベースですので、パスワードやポート番号など、必要な設定項目を指定すればすぐにインストールできます(rootでのインストールが必要)。
Oracle 11.2 XEは DRCP connection pooling (Database Resident Connection Pooling)をサポートしていますので、PHPアプリケーション用の小さなフットプリントのデータベースを最大限に活かすことができます。

PHPとOracle Databaseの他のEditionで利用可能な先進的な機能について詳細を知りたい方は、 Underground PHP and Oracle Manual の後半部分がお勧めです。

The Underground PHP and Oracle Manual
http://www.oracle.com/technetwork/topics/php/underground-php-oracle-manual-098250.html

原文はこちら。
http://blogs.oracle.com/opal/entry/oracle_11_2_xe_with

[JRockit] Understanding Compressed References

このエントリはDavid Buckが寄稿してくれました。JVMの問題に関するディープな話題を今後数回に分けて取り上げます。今日はその第1回目。

Compressed references(参照の圧縮)はJRockit 64bit版で高速化するための最適化です(メモリを集約の負荷で最大15%)。このエントリでは、この機能がどういうもので、どのような効果があるのかを説明します。その上で、参照圧縮を有効にした場合に起こりうる問題について説明します。

背景
Javaの "Write Once, Run Anywhere"という設計ゆえに、32bitから64bit JVMへの移行は通常何も触らずに移行できます(JNIを使っていない限りは)。単にJVMを入れ替えれば、再コンパイルせずとも64bitプロセスとして実行することのメリット(巨大なJavaヒープサイズやCPUレジスタの数が増える、とか)を得ることができます。これはまさにJavaプラットフォームが約束している、「アプリケーションは新しいハードウェアやVMテクノロジーの先進性を、アプリケーションそのものを更新せずとも利用できる」ことに他なりません。
しかし、トレードオフがあります。通常は性能に関連することなので、32bitと64bit JVMの選択をする場合には考慮すべき内容です。ある状況では、コードサイズや64bitプロセスのポインタ長が増加するので、その結果としてキャッシュの効果が薄れたり、CPUメモリ帯域幅を大量に消費することがあります。アプリケーションは各々異なるので、負荷テストをしてどのJVMが最高の性能を出すかを調べる必要がありますが、同一Javaアプリケーションを実行した場合、32bit JVMのほうが64bit JVMに比較して良い性能を出すことが多いのです。
参照の圧縮機能は64bit JRockit JVM上で実行しているアプリケーションが64bit JVMのメリットを享受しつつ、32bit JVMの性能メリットをも享受することができるソリューションなのです。ヒープサイズを十分に小さくした状態で実行すると、圧縮された参照により、64bit JRockit JVMで32bitのオブジェクト参照(ポインタ)を利用できます。32bitポインタを利用することにより、より高速になるだけでなく、他のオブジェクトを参照するJavaオブジェクトを格納するために必要なヒープメモリサイズを減らすこともできるのです。

詳細
参照の圧縮機能がもたらすメリットを理解する必要はありません。 知っておくべき情報が欲しいだけなら、「利用方法」の章に飛んでもらってかまいません。詳細を知りたい方は、続きを読んで下さい。
どのように64ビットのアドレス空間で32ビットのポインタを使うのでしょうか。舞台裏の策略が関与して、アプリケーションに両方の長所を与えようとしています。
圧縮参照には3種類あって、それぞれがサポートする最大ヒープサイズ(4GB、32GB、64GB)に対応しています。
最も理解しやすいシナリオは、ヒープサイズが十分に小さく、アドレス空間の最初の4GBに全てのヒープが格納できる条件で、4GBの圧縮参照を利用することです。32ビットアドレス空間で指定可能な範囲内では、単純に32ビットポインタを使用してヒープ上のJavaオブジェクトを指すことができます。これは実装がもっとも簡単な圧縮参照の形式ゆえ、最も古い形式でもあります。JRockitは何年にもわたって4GBの圧縮参照を紹介しています。
4GBの壁を越えると少々事情は複雑になります。我々はもはや32bitのポインタを直接使ってヒープ内のすべてのオブジェクトを参照することはできません。我々は、JRockitの内部設計の恩恵を受けることになります。ヒープ上のすべての単一のオブジェクトは、8バイト境界に整列されます。言い換えると、すべての単一のオブジェクトのアドレスは常に8の倍数になります。ビット操作に慣れている方は、最後の3桁が常にゼロになることがすぐにわかると思います。言い換えれば、我々は、各32ビットのヒープアドレスの上位29ビットだけを「使って」いるのです。
これらの「未使用」のビットを利用する鍵は、右に3ビットで各アドレスを回転させてから、各ヒープアドレスを格納し、そして、逆参照が必要な場合には、後で左の3ビットを逆に回転させるというものです。これにより、32ビットのポインタを使って35ビットのアドレス空間(35ギガバイト)を使うことができます。このやり方は複雑に思えるかもしれませんが、このような回転は、1個のマシンコードの命令で実行され、各アクセスに対し、アドレスの回転が及ぼすパフォーマンスへの影響はごくわずかに近い(より単純な4GB以下の圧縮参照と比較すると、性能への影響は、せいぜい2%程度)。これらのタイプの圧縮参照は32GBまでの圧縮参照として知られています。
毎年、劇的にメモリとパフォーマンスのためにアプリケーションがJVMに要求する要件は劇的に増加しています。特にJ2EEサーバサイドアプリケーション向けに、これまで以上に野心的なプロジェクトと組み合わせ、より大規模で複雑なフレームワークを利用するため、ほんの数年前には想像を絶するような、パフォーマンスと機能を要求しています。ポイントのケース:32GBより大きなJavaヒープを使っているお客様が以前よりも増えています。こうしたお客様向けに、最後の参照圧縮のタイプ、64GBタイプがあります。
32GBと64GBの間のヒープサイズの場合は、上記のビット回転トリックのバリエーションを使います。 64GBの参照圧縮では、JRockitは16バイトバウンダリでオブジェクトを保存するよう制限します。
断片化(16バイトの倍数を消費しないオブジェクト間の無駄な空間)がほとんど増えないように代償を払うことにより、0が保証されている4bitを各32bitアドレスに割り当て、その結果、36bit(64GB)の範囲を扱うためにビットシフトできるようになっています。
ポイントは、圧縮参照が32bit値の全ての1桁ビットを使って、可能な限り大きなアドレス空間を参照しようとすることです。(64bitアドレス空間の)どこにJavaヒープを格納するか、アドレスをどうやって格納するか、といった仮定をすると、64bit JVM上で実行していても64bitポインタを利用することによるオーバーヘッドを避けることができます。

利用方法
ほとんどの利用者にとって、圧縮参照はすぐに効果を発揮します。実際に、既に何もしらないうちに使っているかもしれません。コマンドラインで指定した最大ヒープサイズ(-Xmx)に依存して、JRockitは自動的に参照圧縮を利用するようになっています。JRockit R28では、以下のようになっています。
-Xmx: <= 3GB  -- 4GB の参照圧縮を使用
-Xmx: <= 25GB -- 32GB の参照圧縮を使用
-Xmx: <= 57GB -- 64GB の参照圧縮を使用
過去のリリース(R27以前)では、4GBの参照圧縮のみがサポートされていました。より大きなヒープサイズ(64GB以下)を利用している場合、参照圧縮を活用できるJRockit R28へのアップグレードを検討したくなるかもしれません。JRockit R26.4から、4GB以下の全てのヒープサイズに対し、参照圧縮がデフォルトで有効です。
JRockitの標準の動作は、ほとんどのユーザーにとって理想的ですが、あなたが圧縮された参照を無効にしたり、使用する参照圧縮の種類を指定する(R28のみ)ことができます。JRockitのデフォルト動作のオーバーライドに関する詳細は、オンラインマニュアルを参照してください。

Oracle® JRockit Command-Line Reference Release R28
3 -XX Command-Line Options
-XXcompressedRefs
http://download.oracle.com/docs/cd/E15289_01/doc.40/e15062/optionxx.htm#BABCDECI

Oracle® JRockit Command-Line Reference Release R26/R27
-XX Command-Line Options
-XXcompressedRefs
http://download.oracle.com/docs/cd/E13150_01/jrockit_jvm/jrockit/jrdocs/refman/optionXX.html#wp1021022

ややこしいことなど
JVMが4GB以下で利用可能なアドレス空間が不足している場合、圧縮参照が利用できない場合が時折発生します。
(通常は、ある時点で32ビットのポインタによって参照されているため)アドレス空間の最初の4GBにのみ保存できる他のデータ構造やコードがあります。 4GBの参照圧縮を使用する場合は、全体のJavaヒープは、この貴重な4GB以下のアドレス範囲に格納されるため、OutOfmemoryErrors(OOME)がが発生する可能性があります。実際には、3GBは、4GBの参照圧縮を使用したいと思う最大のヒープサイズでしょう。

(64bitプロセスが予約可能な)アドレス空間は事実上無制限なので、OOMEが64bitプラットフォームで発生することはほとんどありません。64bit JRockitでOOMEが発生し、しかも4GBの圧縮参照を使用している場合、4GB以下のアドレス空間の枯渇が原因でOOMEが発生しています。
幸運にも、この問題は簡単に解決できます。最新のJRockitリリース(R28)では、(4GBの参照圧縮ではなく)32GBの参照圧縮の利用をJRockitに強制することで、この貴重なアドレス空間に格納すべき他のデータのために十分な余地を残して、4GBの範囲を超えて格納することができます。
$java -Xmx3584m  -XXcompressedRefs:size=32GB MyWonderfullJavaApp
過去のリリース(R27以前)では、4GBの参照圧縮のみがサポートされていたので、選択可能なオプションは、参照圧縮を無効にするしかできません。
$java -Xmx3584m -XXcompressedRefs=0 MyWonderfullJavaApp
R26やR27を利用されている方で、4GBの参照圧縮には大きすぎるヒープを使っている場合、 より大きなヒープサイズをサポートする参照圧縮が追加されたR28を使おうと、アップグレードを検討したくなるでしょう。

まとめ
圧縮参照機能は本当に64bit JRockit上で動作するアプリケーションの性能を向上させることができます。多くのアプリケーションにとって、スムースかに32bit JVMから移行し、多くのアプリケーションでは、実質的に性能に影響する事柄を修正すれば、32bit JVMからの移行をスムーズにすることができます。さらに良いことに、簡単に使え、すぐに効果を発揮しますので、実際には、既に恩恵を受けているかもしれませんね。

PS. HotSpot JVMでも同様の機能(CompressedOops)をサポートしています。


原文はこちら。
http://blogs.oracle.com/jrockit/entry/understanding_compressed_refer

[EM] Overview demo of Oracle Integrated Systems Management and Support

Oracle Enterprise Managerは、My Oracle Supportと緊密に連携しています。My Oracle Supportは、プロアクティブな予防ツールを使って、貴社のシステムやソフトウェア、アプリケーションがスムーズに実行し続けられるようにお手伝いします。
このデモでは、Oracleの統合システム管理とサポートに関する概要をご紹介しています。Oracle Enterprise Managerを使えば、お客様がシステム構成をより理解しやすくするために管理をシンプルにでき、反復的な手動管理タスクを減らすことができるのです。




詳細は、Enterprise Managerのページへどうぞ。

Oracle Enterprise Manager
http://www.oracle.com/jp/products/enterprise-manager/index.html


原文はこちら。
http://blogs.oracle.com/oem/entry/overview_demo_of_oracle_s

[E-Business Suite] WebCast Replay Available: Tuning All Layers of EBS (Part 1)


最新のATGライヴWebcastの録画とプレゼンテーション資料をご案内できるようになりました。
Lester Gutierrez(Senior Architect)とDeepak Bhatnagar(Senior Manager / E-Business Suite Application Performance team)がTuning All Layers of E-Business Suite (Part 1 of 3)でお話しています。このWebcastでは、Oracle E-Business Suiteのシステム管理者、データベース管理者、開発者、および実装者が、パフォーマンスチューニングのフレームワークに従って、E- Business Suiteのパフォーマンス向上するためにとるべき方法の概要を説明します。
Part 1では、パフォーマンスのトリアージアプローチ(切り分け)に焦点を当てて、アプリケーションモジュールのチューニング、性能向上のベストプラクティス、そしてデータベース層のチューニングなどをお伝えします。このATG Live Webcastは、筋金入りのアプリケーションDBAがお気に入りのカンファレンスにて実施されている、パフォーマンス関連のセッションの拡大版です。 
OpenWorldの後に第2部をお楽しみに。

9月最後の木曜日のATG Live Webcastはありません。ATG Live Webcastは2011年10月27日の「Tuning All Layers of E-Business Suite (Part 2 of 3)」までお待ち下さい。次回のWebcastは、Lester Gutierrez(Senior Architect)とDeepak Bhatnagar(Senior Manager)が、一連のパフォーマンスチューニングのプレゼンテーションの第2部をお送りする予定です。9月下旬に発表される、2011年10月のWebcastの概要を待って下さい。

他のATG Webcast(録画)をご覧になるには
ATG Live Webcastの録画やプレゼンテーション資料、全てのATGトレーニング教材のカタログは、このブログ原文の Webcasts and Training からご覧頂けます。


原文はこちら。