Archive

Posts Tagged ‘AS’

Oracle Sun – strategy outline

January 28th, 2010 PeterPaul No comments

On January 27th Larry Ellison and other Oracle executives outlined the Oracle Sun strategy in a live event. The webcast and sheets are available online. There is also a FAQ overview available.

Besides that there is the Oracle + Sun Product Strategy Webcast Series. If you are into Java or Middleware developement, I think the message boils down to these few sheets:

Development Tools

Oracle Dev Tools

Development Tools Strategy















Application Server

Glassfish and WebLogic will coexist and share logic/components.

Oracle Apps Server

AS strategy
















SOA products

Oh, and WebCenter will be the strategic portal offering.

Oracle SOA Products

SOA product strategy




Previous post on the subject:

Monitoring AQ

December 23rd, 2009 PeterPaul No comments

Although there were already several posts on querying AQ, like “in the queue” and “enqueue“, the next one is great when monitoring queues. We are using this to monitor AQ, especially for Oracle ESB (hence the commented addition):

1
2
3
4
5
6
7
8
9
SELECT aq.name
,      aq.queue_table
,      aq.queue_type
,      v$aq.* 
FROM   v$aq
,      all_queues aq
WHERE  aq.qid = v$aq.qid
-- use if looking for ESB AQ: and    aq.queue_table = 'ESB_JAVA_DEFERRED';
;

The query will result in something like:

Monitoring AQ query results

It contains the following metrics:

  • Waiting – Number of waiting message;
  • Ready – Number of messages with status ready;
  • Expired – Number of expired messages;
  • Total Wait – Total waiting time per queue;
  • Average Wait – Average waiting time per queue.

A describtion of the AQ and Streams views can be found here.

Tuning AQ for Oracle ESB

December 16th, 2009 PeterPaul No comments

If you are using AQ within Oracle ESB there might be a point in time you want to tune AQ performance. In this post you’ll find the results of Metalink research, and our experience on a production system.

Queue compatibility

When creating the ORAESB schema (in version 10.1.3.3) using the script $ORACLE_HOME/integration/esb/sql/oracle/create_esb_topics.sql, the queues are created with 8.1 compatibility. This is solved in 10.1.3.4. To alter this find the statement

1
2
3
4
5
6
dbms_aqadm.create_queue_table
    ( Queue_table => qtablename
    , Queue_payload_type => 'SYS.AQ$_JMS_TEXT_MESSAGE'
    , multiple_consumers => true
    , compatible => '8.1'
    );

and change this to:

1
2
3
4
5
6
dbms_aqadm.create_queue_table
    ( Queue_table => qtablename
    , Queue_payload_type => 'SYS.AQ$_JMS_TEXT_MESSAGE'
    , multiple_consumers => true
    , compatible => '10.2'
    );

if you already created the queues, use this statement:

1
2
3
4
dbms_aqadm.migrate_queue_table
    ( queue_table => 'ESB_JAVA_DEFERRED'
    , compatible => '10.2'
    );

If you’re not sure check the compatibility with this query:

1
2
3
4
5
6
SELECT queue_table
,      compatible
,      recipients
FROM   dba_QUEUE_tables
WHERE  owner = 'ORAESB'
;

Streams pool size

Verify the current stream_pool_size using the following query:

1
2
3
4
5
6
7
SELECT component
,      current_size/1024/1024 "CURRENT_SIZE"
,      min_size/1024/1024 "MIN_SIZE"
,      user_specified_size/1024/1024 "USER_SPECIFIED_SIZE"
,      last_oper_type "TYPE" 
FROM   v$sga_dynamic_components
;

look for the streams pool. There are several Metalink notes on this setting (including 316889.1, 102926.1 and 335516.1). The latter has a general recommandetion per RDBMS version:

  • 11g: set STREAMS_POOL_SIZE to be greater or equal to 100 MB;
  • 10gR2: set SGA_TARGET > 0 and STREAMS_POOL_SIZE=0 to enable autotuning of the Streams pool;
  • 10gR1: use the STREAMS_POOL_SIZE init.ora parameter to configure the Streams memory allocation;

And of course you could use V$STREAMS_POOL_ADVICE to get advice for your specific situation.

Upgrade the JDK

A described here upgrading the JDK can also give a performance boost.

Change the JDK for Oracle Application Server 10g EE

December 8th, 2009 PeterPaul No comments

This post describes how to change the JDK for an Oracle Application Server 10.1.3.x installation. To check which JDK versions are supported with Application Server releases, check Metalink note 258833.1.

  1. Stop all running Application Server processess.
  2. Rename the current JDK directory:
  3. 1
    2
    
    cd $ORACLE_HOME
    mv jdk jdk.old
  4. Install or copy the JDK version you need into $ORACLE_HOME/jdk
  5. Start the Application Server processess.
    1. You can check the JDK version:

      1
      
      $ /jdk/bin>./java -version

      AIX 5L specials

      If your systems are running AIX 5L there is some patching to be done. Assuming you’re using JDK 1.5 you have to apply patch 5261515.

      After upgrading to a IBM JDK it is very well possible to run into the JAVAX.NET.SSL.SSLKEYEXCEPTION:RSA PREMASTER SECRET ERROR. In that case you have to modify the $ORACLE_HOM/jdk/jre/lib/security/java.security to

      1
      2
      3
      4
      5
      
      security.provider.1=com.ibm.jsse2.IBMJSSEProvider2
      security.provider.2=com.ibm.crypto.provider.IBMJCE
      security.provider.3=com.ibm.security.jgss.IBMJGSSProvider
      security.provider.4=com.ibm.security.cert.IBMCertPath
      security.provider.5=com.ibm.security.sasl.IBMSASL

      and create a symbolic link (or copy the jar) from the directory $ORACLE_HOME/jre/lib/ext/ibmjsseprovider2.jar to $ORACLE_HOME/jdk/jre/lib/ibmjsseprovider2.jar as described in Metalink note 746423.1.

Categories: Oracle, SOA Suite Tags: , , , , ,

SOA Suite 10.1.3.5.1 available for WebLogic Server 10.3.1

November 5th, 2009 PeterPaul No comments

From today there is a SOA Suite 10.1.3 familiy member available for WebLogic Server 10.3. Oracle SOA Suite 10.1.3.5.1 has been released. As described earlier we were looking for a recent SOA Suite version that is certified for a recent WebLogic server version. And here it is: Oracle BPEL Manager, Oracle ESB, Oracle Rules, and OWSM (basically all versioned 10.1.3.5.1) are certified with WLS 10.3.1.

Update – Installation instructions

Installation instructions for SOA Suite 10.1.3.5.1 on WebLogic Server can be found in these blogs:

Watch tuning settings when applying SOA Suite patchset

September 14th, 2009 PeterPaul 1 comment

In today’s post you can find out why you need a changelog, and what activity to add to your upgrade roadmap.

After a recent upgrade of SOA Suite to a more recent patch level, we saw errors that some of us vaguely remembered. They were traced back to transaction timeouts in the BPEL Server. Searching Metalink, OTN, and of course Google we found out we had to change the transaction-timeout and min-instances in the orion-ejb-jar.xml. More detailed information on these settings can be found on in the SOA Suite best practises. However they are not in the spotlight of this post. So let’s go back to the main story.

At that time it seemed strange that the suggested values in the documentation, and as mentioned in blogposts, conformed with the ones we thought set in production.

Need for a changelog

Fortunately we have a changelog. We checked it, and indeed the values should correspond. We set these during a previous tuning effort. Time to check the actual orion-ejb-jar.xml in the production environment. Oops! During the SOA Suite upgrade our fine tuned orion-ejb-jar.xml was overwritten with one with default values :-(

Recommendations

What can you learn from our experience:

  • Maintain a changelog – also for configuration settings;
  • Include a post upgrade action in your plan to check whether all tuning and other configuration settings are still at the appropriate values;
  • Oh, and by the way, keep your test environment in sync with production (including all configuration settings)! So all this can be well planned and tested before the actual go live.

Fusion Middleware 11g – BAM

August 24th, 2009 PeterPaul 1 comment

The Why move to SOA Suite 11g blog post, showed me that one of the important benefits of the OFM 11g release slipped to the back of my head… Pat Shepherd actually throws in a bonus – 11th reason:

BAM has been rewritten entirely in Java offering platform choice and better performance

From the integration point of view it is great that BAM is now available on the J2EE stack (instead of MS ISS). This will lower the costs for companies that want to use BAM besides the SOA Suite. Not only brought this down the requirements for the machine it is running on (I was able to run BAM server besides the rest of the SOA stuff and JDeveloper on my laptop – although it wasn’t the most performant system ever witnessed). Besides that the cost of managing the platform will be lower since there is only one type of application server involved.

MS is still needed for BAM…

For those who want to get rid of MS asap, there is sad news: Microsoft Internet Explorer is still needed in this release. This is due to the fact that al those great graphs that can be created, use ActiveX controls VML (Thanks Sanjay). VML is a Microsoft and Macromedia specific XML language to produce vector graphics. The open standard for vector graphics is SVG (W3C SVG home).

BAM links

The BAM User Guide can be found here. Beside the documentation there are already some interesting blogposts on BAM in 11g Release 1 available.

As a last word I’d like to add that with the 11g release of BAM i’m much more comfortable with putting BAM into play at a customers site.

Unable to start HTTP server after restore

August 19th, 2009 PeterPaul 3 comments

After a restore of the Application Server and Oracle SOA Suite we were unable to start OHS (Oracle HTTP Server). The result of opmnctl status was:

Processes in Instance: <<>>
---------------------------------+--------------------+---------+---------
ias-component                    | process-type       |     pid | status
---------------------------------+--------------------+---------+---------
OC4JGroup:admin_group            | OC4J:admin_apps    |  241672 | Alive
ASG                              | ASG                |     N/A | Down
OC4JGroup:default_group          | OC4J:oc4j_soa      |  409618 | Alive
OC4JGroup:default_group          | OC4J:home          |  340092 | Alive
HTTP_Server                      | HTTP_Server        |  462964 | Down

The command opmnctl startproc ias-component=HTTP_Server resulted in:

Error
--> Process (pid=13365)
failed to start a managed process after the maximum retry limit

The log file /opmn/logs/HTTP_Server~1.log. Was not very helpfull:

--------
09/08/19 10:25:37 Start process
--------
ORACLE_HOME/Apache/Apache/bin/apachectl startssl: execing httpd

After a lot of Google, OTN and searching on our server we found out that the owner and rights for the .apachectl somehow got lost during the back up (compression?) or restore operation. On UNIX the HTTP server should run as root. Changing the ownership and rights as described in the link solved our problem:

  • Change to root user
  • Navigate to ORACLE_HOME/Apache/Apache/bin and execute the following command:
  • chown root .apachectl
  • chmod 6750 .apachectl
  • Exit root.
Categories: Oracle, SOA Suite Tags: , , ,

Running FMW 11g on your laptop

July 16th, 2009 PeterPaul 1 comment

There should be no problem running Oracle Fusion Middleware 11g on a laptop. However if it’s memory is on the low end of the spectrum, it can be challenging. One of the changes you can make, is reducing the memory allocated to the Java process for the WLS domain running the SOA Suite. These memory settings can be altered in the following file:

<your_WLS_home>\user_projects\domains\soa_domain\bin\setSOADomainEnv.cmd

Change the memory settings to:

set DEFAULT_MEM_ARGS=-Xms512m -Xmx512m

Off course the values are dependent on the resources of your machine, and shoud be altered accordingly.

Fusion Middleware 11g first impressions

July 14th, 2009 PeterPaul No comments

Within a week from the launch of FMW 11g I was able to to get a good first impression of this milestone release. We attended the SOA Suite Foundation training that was lead by Oracle PTS. Basically this leads you through the OrderBooking order demo / tutorial. This gives a good impression of the foundations and possibilities of SOA Suite 11g.

flow trace

flow trace

Integrated

One of the key marketing terms for FMW 11g release is integrated. And indeed Oracle has made a great step in integrating SOA Suite components, as well as integrating SOA Suite with Weblogic server and it’s (monitoring) tools. However note that even if in the licensing Oracle Service Bus is in the package… It is still a separate product in this release. OSB is a sparate download and has to be installed next to the SOA Suite. Off course since it’s BEA background it has integration with Weblogic.

Part of the great stuff can be seen in the screenshot. It shows the flow through the composite application. After the message is received, it is routed by Mediator (former ESB). Which does it’s magic and sends it to two adapters ( in this case a file and a BAM adapter), and a BPEL process. The BPEL process in turn calls a decision service as implemented with Oracle Rules, and a JMS adapter.

This one common console to view status of both BPEL and Mediator (formerly known as ESB) is a great enhancement. A so called ecid (a global ID ) is used for this end to end tracking. This has really been brought to the next level. However I was a little disapointed that OSB has not been integrated (yet, as we were told) in the integral monitoring using ecid’s.

Composite

The SCA part is a great aid to create and manage composite applications. SCA is based on the idea that business function are provided as a series of services, which are assembled together to create solutions that serve a particular business need. These composite applications can contain both new services created specifically for the application and also business function from existing systems and applications, reused as part of the composition. SCA provides a model both for the composition of services and also for the creation of service components, including the reuse of existing application function within SCA compositions.

FMW composite

FMW composite

The included screenshot gives a good overview of how a composite looks. The example contains Mediator (purple), BPEL (blue), Human Task (green), Business Rule (yellow), and Adapter (white) parts.

Please note that a composite applications, don’t have to be a SOA applications. Using all kinds of adapters in a composite looks great… and from an architectural perspective it could be argued that it is wise to only allow (web) service adapters to the Service Bus (that could be implemented with OSB).