Weblogic and Soa Notes
Weblogic and Soa Notes
Weblogic and Soa Notes
Difference
between
WebLogic
8.x and 9.x?
WebLogic 8.x:
We have a silent
Mode of Domain creation.
We need configure Connection pools then Data source.
Here we don’t have any Lock & Edit future in console.
Don’t have Side by Side Deployment feature.
Where we are Redeploying application we need un-install previous version , then deploy the
new version application.
This Will not support two Phase deployment
Via console we have Different Module Deployment like
1.Applications, 2.EJB Modules, 3.WebApplication Modules, 4.Connector Module.
WLST was introduced but this will be available from 8.1 SP6.
Not support for JMS Client-Side Store-and-Forward
Server doesn’t come up if deployment fails
WebLogic 9.x:
We don’t have this Option in Domain creation.
First need to create a Dynamic Data Source , inside u can find a Connection pool tab.
Here we have Lock and edit feature in console.
Having Side by Side Deployment feature.
No need to uninstall simply updates option.
This will support two Phase deployment.
Here No module deployment all type of Modules In Single Screen in console.
Here full Developed with MBean utility.
Support for JMS Client-Side Store-and-Forward
Server boots in ADMIN mode if deployment failes
What Is a Domain?
Domain is a collection of logically related group of services, resources and functionalities together in one
place for example resources like Server instances, machines, clusters and services like JDBC data
sources, JMS servers, security providers and there will One Administration Server, which is the central
point from which you configure and manage all resources in the domain and it contains other additional
WebLogic Server instances called Managed Servers with clustered environment where we deploy
applications like Web, Java and EJBs to process the requests and these total domain information is stored
in Config.xml
Vertical Clustering: Grouping of available WebLogic server instances in a single physical machine as
cluster
Horizontal clustering: Grouping of multiple application servers that are run on two or more separate
physical machines. Horizontal scaling is more reliable than vertical scaling,
In Real time: Basic Tier cluster with horizontal mc1, mc2
5
How WebLogic Servers Instances methods to Communicate in a Cluster and how server detect
failure?
WebLogic Server instances in a cluster communicate with one another using two basic network
Technologies:
1) Sockets Communication 2) Heart Beat Communication
Socket Communication: (one to one or peer to peer) each server instance will communicate with IP
socket programming for sharing the information
Heart Beat Communication: Each server will communicate with the cluster by sending the heart beat for
every 10 sec. if it does not receive a heartbeat from the server for 30 seconds or longer), the monitoring
server marks the peer server as "failed."
There are two types of Messaging Modes for external communication systems:
1) Unicast 2) Multicast (one to many)
Unicast:
When creating a cluster within a new WebLogic Server environment, it is recommended that you
use the Unicast messaging type
It works on DHCP no need to require configuring any IP Addresses; it takes the one of the IP
Address from IP Table
uses TCP protocol
Multicast:
If you are creating a cluster within an existing WebLogic Server environment or you need to
ensure backward compatibility with older versions of WebLogic Server, you must use the
Multicast messaging type.
IP multicast is a simple broadcast technology that enables multiple applications to subscribe to a
given IP address and port number and listen for messages.
Entire network we have to configure to use the same multicast IP address on same LAN using
Class - C and its range is 224.0.0.0 to 239.255.255.255.
The default value used by WebLogic Server is 239.192.0.0 this address must be unique to this
cluster and should not be shared by other applications
The multicast port is used by cluster members to communicate with each other. Valid values are
between 1 and 65535.
IP multicast broadcasts messages to applications, but it does not guarantee that messages are
actually received.
It uses UDP Protocol
What type of Objects can be clustered and what Objects are cannot be clustered?
Can be clustered: Web applications, EJBs and RMI Objects, JDBC Connections (data sources and
multi data sources), JMS
Cannot be clustered: The following APIs and internal services cannot be clustered in WebLogic
Server:
File services including file shares 2) Time services
Basic Tier Architecture: The recommended basic architecture is combined tier architecture—all
tiers [Web, Presentation and Object tier] of the Web application are deployed to the same
WebLogic Server cluster.
Multi Tier Architecture: multi-tier architecture uses two separate WebLogic Server clusters: one
to serve static HTTP content and clustered servlets, and one to serve clustered EJBs.
7
What happens when a failure occurs and the stub cannot connect to a WebLogic
Server instance?
When the failure occurs, the stub removes the failed server instance from its list. If there are no servers
left in its list, the stubb uses DNS again to find a running server and obtain a current list of running
instances. Also, the stub periodically refreshes its list of available server instances in the cluster;
this allows the stub to take advantage of new servers as they are added to the cluster.
Different States of SERVER LIFECYCLE?
STARTING:-
a server instance prepares itself to accept requests and perform application processing
- it retrieves its configuration data; - starts its kernel-level services; - initializes subsystem-level
services
- deploys applications; - loads and runs startup classes
STANDBY
- a server has initialized all of its services and internal applications (such as the Administration Console)
- can accept administration commands; - can participate in cluster communication
- does not accept requests from external clients.
RESUMING: - to bring back the server to running state from stand by state
RUNNING: - it offers its services to clients, - can operate as a full member of a cluster
SUSPENDING: server handles a predefined portion of the work that is currently in process—referred
to as "in-flight" work
- Upon completion of in-flight work, the server progresses from the SUSPENDING state to the
SHUTTING_DOWN state.
SHUTDOWN: - a result of a graceful shutdown or forced shutdown process
FAILED: - one or more critical subsystems have failed, the server instance sets its state to FAILED
UNKNOWN: - If a server instance cannot be contacted, it is in the UNKNOWN state.
Managed server log file (soa_server1.log): The soa_server1.log file logs entries that are both
infrastructure and transaction specific. In the event that an error is found in a composite instance that is
unclear, locate the timeframe of that instance and search this log file.
Diagnostic log file (soa_server1-diagnostic.log): writes entries in the Oracle Diagnostic Logging (ODL)
format. It provides a prototype of a log message in the ODL format. This is a text file and entries in this
file conform to an Oracle standard that includes information such as timestamp, server name, error type,
component ID, user, and other log information.
Server startup standard out log file (soa_server1.out): is generated when you start up the managed
server via Node Manager or the Oracle WebLogic Server Administration Console. Review this log for
server startup issues. For example, it may include startup information such as JVM heap and the
CLASSPATH settings as well as runtime infrastructure issues errors
The HTTP access log (access.log): The access.log file is generated in the event that you do not have
the Oracle Web Tier installed. This log file logs all HTTP requests to the internal web server following the
standard Apache HTTP Server log format. Reviewing this may help in identifying all SOAP requests that
have hit your server, as this is the first touch point to the server
Transaction logs store information about committed transactions that may not have been completed.
The transaction logs provide Oracle WebLogic Server with a mechanism to recover from system crashes
or network failures. however, allows transaction logs to be stored in a JDBC store, Transaction logs can
only be stored in the default store and must be file-based.
Locale-formatted Timestamp, Severity, Subsystem, Machine Name, Server Name, Thread ID, User ID,
Transaction ID, Diagnostic Context ID, Raw Time Value, Message ID, and Message Text.
When a WebLogic Server instance writes a message to standard out, he output does not include the
#### prefix and does not include the Server Name, Machine Name, Thread ID, User ID, Transaction
ID, Diagnostic Context ID, and Raw Time Value fields.
13
Stage mode: The Administration Server copies the deployment unit files to the staging directories of
target servers and they are deployed using the local copy. This mode is useful when deploying small
or moderate size applications, and prevents having a single point of failure if the original copy is not
accessible. This is the default staging mode for Managed Servers.
Nostage mode: The deployment units are deployed using the same physical copy, which must be
accessible by the Administration Server and target servers (for example, via a shared directory). The
Administration Server does not copy the deployment unit files to the target servers, in this case. This
mode is useful when deploying very large deployments to multiple targets, and for deployments that
require dynamic updates. This is the default staging mode for the Administration Server.
15
External Stage mode: In external_stage mode you must copy the deployment units manually
to the correct staging directories before deployment. Use this staging mode for deployments
where you want to manually control the distribution of deployment files to target servers. This
mode prevents deployment unit information from being dynamically updated. In this case, the
Administration Server accesses the original (master) deployment unit for validation.
Configure Deployment Staging Directory : Log in to WebLogic server Admin console and click on
Servers: Deployments Tab:
For listing apps: java weblogic.Deployer -adminurl http://localhost:7001 -user weblogic -password
weblogic01 –listapps
3) Make sure the weblogic.jar is copied to ANT lib directory to run the build.xml successfully.
Note: wldeploy task referring to the classname= weblogic.ant.taskdefs.management.WLDeploy will be
picked from weblogic.jar.
Requires a Native Driver (vender specific driver written specifically for the relevant OS)
to be already installed on the client machine
This driver converts JDBC calls to Native API calls
TYPE 3 DRIVER (Network-Protocol Driver- (Middleware Driver))
Also known as the Pure Java Driver for Database which makes use of a middle-tier between the
calling program and the database.
The middle-tier (application server) converts JDBC calls directly or indirectly into the vendor-
specific database protocol.
The middleware server (which can be a fully fledged J2EE Application server) can provide typical
middleware services like caching, load balancing, logging, and auditing
TYPE 4 DRIVER (Native-Protocol Driver (Pure Java Driver))
This driver converts JDBC calls directly into a vendor-specific database (Direct to Database)
Completely implemented in Java to achieve platform independence. They install inside the Java
Virtual Machine of the client. This provides better performance from previous drivers
5. Select “one phase commit” for using sing database here but in real time “two –Phase commit” : Next
6. Now configure Database Connection Properties as shown below
21
Now create another Generic data source with the previous steps for adding to multi datasource
9. select one or more targets to deploy your new JDBC Multi Data Source.
And select data source type as non-xa driver for single database using
10. Select What JDBC Data Sources would you like to add to your new JDBC Multi Data Source
And click finish
23
Here waiting for connection failure count not to be failed at any time
2) Publish and Subscribe [Topic]: One publisher publishes the message and Zero or more
subscribers will receive the messages.
JMS topic:
A distribution mechanism for publishing messages that are delivered to multiple subscribers.
The publisher has to create a message topic Subscribers may register to receive messages on a
particular message topic. The subscriber has to remain continuously active to receive messages
Connection factory name is given for sender/publisher and receiver/subscriber to connect JMS
Server
While connecting the client look up for the connection factory with help of JNDI in messaging
model in JMS to identify the destination
A Connection Factory encapsulates connection configuration information,
Next select the server instance or migratable target on which you would like to deploy this JMS Server.
The following properties will be used to target your new JMS system module.
Use this page to select the server or cluster on which you would like to deploy this JMS system module.
Next Finish
Now create the sub deployments for JMS Module, click on created JMS Module
Now create the queues and topic by going to configuration Tab clicking on JMS Module
27
A subdeployment is a mechanism by which JMS resources are grouped and targeted to a server instance,
cluster, or SAF agent. If necessary, you can create a new subdeployment by clicking the Create a New
Subdeployment button.
What is a sub-deployment
A sub-deployment is a mechanism by which JMS module resources like 'queues, topics, and connection
factories' can be grouped and targeted to a server resource like 'JMS servers, server instances, SAF
agents, or a cluster'.
ROLE: Dynamic authorization while accessing to application (Depends upon user who logged
in) and it defines at Admin Console at [+Security + My Realm: URL Patterns tab]
POLICY: A policy specifies which users, groups, or roles can access the resource under a set
of conditions defines at Deployment Descriptors by developers
1) Creating a Key store (.JKS) file by using JAVA KEY TOOL from jdk1.6/bin/
keytool –genkey –alias (domain name) –keyalg RSA –[key size 512] –keystore (domainname.jks)
Now it generates a new private key entry and self-signed digital certificate in a key store
client_domain.JKS file is created in bin directory.
3) CA Team (done by CA team) Import Signed certificate reply from and they will give back
Keytool –import -alias (domain name) –file filename.pem –keypass (password) –keystore (Filename.jks)
–storepass (password)
Save it
BSU or also called smart update utility a Utility (java based application) provided with the weblogic
server to apply patches.
You can find bsu script under ORACLE_HOME\utils\bsu\bsu.sh
Earlier it was possible to login and download patches directly via bsu gui console but Smart
Update patch and patch set download capability has been decommissioned by Oracle since June 10,
2011, it mean you have download patch from oracle support website first ( support.oracle.com using
your oracle credentials ), after that you have to place it under patch staging directory (which is
ORACLE_HOME\utils\bsu\cache_dir by default ),
And after either you can apply from BSU GUI console or by command line.
GUI Mode :
Console Mode :
Syntax: ./bsu.sh -prod_dir=/opt/appsvr/product/wls_103/wlserver_10.3 -patchlist=SFF2 -verbose –install
#./bsu.sh -report -To Verify WebLogic Patch
In Windows, Ctrl-Break to the JVM process running in foreground can generate thread dumps
1.Kill -3 PID 2.weblogic.Admin Utility 3.Admin Console 4.WLST Scripts
1. In Unix,
Find the process id for your server
Ps –ef | grep java; Kill -3 <pid>
The OutPut of the Thread Dump will be generated in the Server STDOUT.
2. webLogic.Admin utility
set the class path running <DOMAIN_HOME>/bin/setDomain.env
# java weblogic.Admin -url t3://localhost:7001 -username weblogic -password weblogic1
THREAD_DUMP
Note: Thread Dump will be printed to the server’s standard out (by default, the shell in which the server
is running).
3. WLS Admin Console can generate thread dumps. Go to the Server Instance -> Monitoring ->
Threads-> Dump Thread Stack Button option
4. Using WLST (WebLogic Scripting Tool)
a. Save and execute the below snippet as ThreadDump.py next # . ./setDomainEnv.sh
************************************
connect(‘weblogic’,'weblogic1′,’t3://localhost:7001′)
cd(‘Servers’)
cd(‘AdminServer’)
threadDump()
disconnect()
exit()
************************************
Note: The thread dumps get stored in the location from where you run the WLST script
NOTE: It is recommended to capture a set of 6-7 thread dumps at an interval 8-10 seconds to find a
pattern in the thread execution.
To Read the Binary Heap Dump File in Eclipse Memory Analyzer Tool ( MAT ) Just u need to extract this
Zip then u can directly start (no Installation needed)
Observe the heap usage of Objects in the heap dumps. If the object instance keeps on increasing in the
subsequent heap dumps, force a garbage collection from the WebLogic Server console
What is a Stuck Thread?
WebLogic Server diagnoses a thread as stuck if it is continually working (not idle) for a set period of
time. You can tune a server's thread detection behavior by changing the length of time before a thread is
diagnosed as stuck (Stuck Thread Max Time), and by changing the frequency with which the server
checks for stuck threads. Check here to see how to change the Stuck Thread Max Time.
Expand Environment > Servers(select server) : Configuration > Tuning tab,
Stuck Thread Max Time -- Amount of time, in seconds, that a thread must be continually working
before a server instance diagnoses a thread as being stuck.
Stuck Thread Timer Interval -- Amount of time, in seconds, after which a server instance periodically
scans threads to see if they have been continually working for the configured Stuck Thread Max
Time.
1) Using Console:
Particular Server: Monitoring: Performance Tab: Garbage Collect button
2) Using weblogic.Admin
java weblogic.Admin –url t3://<Target IP>:<PORT> -username <WL Admin username>password <admin
password> INVOKE –pretty –type JVMRuntime –method runGC
39
EX:- Java Process to explain the Java Process partitions in a 2Gb process size
machine.
Java Heap Area: (-Xmx and -Xms)
When a Java program started Java Virtual Machine gets some memory from Operating System, the
Memory part is called Java Heap. Whenever we create objects they are created inside Heap in Java.
Java Heap space is divided into Young Generation and Old or Tenured Generation
Java Heap dump is a snapshot of Java Heap Memory at a particular time. This is very useful to
analyze or troubleshoot any memory leak in Java or any Java.lang.OutOfMemoryError.
Young generation:
Young generation memory consists of two parts, Eden space and survivor space. Shortlived objects will
be available in Eden space. Every object starts its life from Eden space. When GC happens, if an object is
still alive and it will be moved to survivor space and other dereferenced objects will be removed
Eden Space:
Every object starts its life from Eden space; Short-lived objects will be available in Eden space.
Space allocated to objects created inside the methods is reclaimed after the method execution is over.
Some objects might live longer as references pointing to them are cleaned up by the minor Garbage
If the Eden space starts filling up then minor garbage collector runs and shifts the old objects to the
Tenured Generation space
Survive ratio: When minor GC happens, if an object is still alive in Eden Space and it will be moved to
survivor space
Native Area:
41
Native area is for the internal operations of the JVM. JVM uses this area to load libraries and for
intermediate code generation. The Size of the Native Memory depends on the Architecture of the
Operating System and the amount of memory which is already committed to the Java Heap.
1 2
45
3 4
5 6
Oracle Mediator : Static Routing: Mediator Routes data from service providers (BPEL process,
business rule, human task) to external partner using adapters. Using mediator you create routing
services and rules for them.
Oracle Adapters: Oracle Adapters use JCA technology to connect the external systems to the
Oracle SOA Suite. by default the following adapters are installed ( BAM, FTP, Java Messaging
Service (JMS), Advanced Queuing (AQ), Files, Message Queuing (MQ) Series )
Business Events and Events Delivery Network: Event Delivery Network allows publish-subscribe
type of loose coupling between SCA components. SOA framework neatly abstracts these details
in the Even Delivery Network so that users can purely focus on publishing and subscribing to
event
Oracle Service Bus: [Dynamic Routing depends up on request received] Oracle Service Bus is
designed to connect, mediate, and manage interactions among heterogeneous services.
Oracle Business Rules : Oracle Business Rules enables business analysts to easily define, update,
and manage key decisions and policies governing business processes and applications..
Oracle BPEL Process Manager or BPM: (BPEL is used for bringing together multiple services and
allows implementation of complex business logic). This component will take care of executing all
components in SOA into an end-to-end process flow. And provides a “dehydration” capability so
that the state of long-running flows is automatically maintained in a database.
Human Workflow : This component is used for approval of transactions by human interaction
(Validation manually Ex:-manual order approval)
Oracle Business Activity Monitoring: (In Built Reporting Tool) Oracle BAM enables business
users to build interactive, real time dashboards (charts), and proactive alerts. which real time
data and personalized reports are delivered to Business Users via a standard web browser
47
Oracle User Messaging Service: It is used to configure the E-Mail drivers to connect email
servers for sending the emails to other systems
Oracle B2B: Provides a platform to exchange standard messages between business entities. It
comes with pre-built messaging templates and samples. It is part of Oracle SOA Suite. However,
we need to separately download and install Oracle B2B Document editor
Oracle Enterprise Manager: Used to Configure, manage and monitor all components and
services. In this web-based environment, administrators can perform everything
What are the sessions and processes in Database how do you change parameters to it?
Sessions: are the external connections to Database
Processes: executes processes which is send by sessions
Processes should be minimum 300 connections
Changing parameters:
Sql> show parameter sessions
Sql> show parameter processes
Sql> alter system reset sessions scope=spfile sid=’*’;
Sql> alter system set processes=300 scope=spfile;
Restart DB Service
What is the difference between Development and Production mode Installation for SOA?
Development: All SOA Infrastructure applications target would be an Admin Server
Production Mode: All SOA Infrastructure applications are installed on separate Managed Server called
(SOA_Server1)
What is BPEL?
BPEL (Business Process Execution Language) is XML based language to design business process that
integrates services into end -to-end process flow. BPEL is based on XML Schema, SOAP (Simple Object
Access Protocol), and WSDL (Web Service Description Language)
BPEL Process Manager is used to design, deploy and manage BPEL business processes.
Key components of BPEL Process Manager are
A) BPEL Server - is Server on which you deploy BPEL Process. These processes are design by developers
and contain Human Workflow (HW) , Adapters and Notification Services.
B) BPEL Console/Control - is console from which you run, test and manage BPEL Processes. This is Web
Based interface to manage, administer and debug processes deployed on BPEL Server. You also manage
49
ant -f ant-sca-deploy.xml
-DserverURL=http://localhost:8001
-DsarLocation=C:\demo\end2end-105-POProcessing\po\solutions\ch9\POProcessing\POPro
cessing\deploy\sca_POProcessing_rev6-cmdline.jar
-Doverwrite=true
-Duser=weblogic
-DforceDefault=true
-Dconfigplan=C:\demo\end2end-105-POProcessing\po\solutions\ch9\POProcessing\POProc
essing\demed_cfgplan.xml
-Dscac.user.classpath=C:\jarfolder\custom.jar
-Dpartition=partition.name
3) Deploying Composite application using EM Console:
51
In Option Configuration Plan section, optionally specify the configuration plan to include with the
archive. The configuration plan enables you to define the URL and property values to use in different
environments. During process deployment, the configuration plan is used to search the SOA project for
values that must be replaced to adapt the project to the next target environment
3) Click Next.
The Select Target page appears.
This page lists the available deployment targets (servers and clusters)
Select the partition into which to deploy this SOA composite application. Partitions enable you to
logically group SOA composite applications into separate sections.
4) Click Next.
The Confirmation page appears.
6) Click Deploy.
What are Dashboard, Instances, Faults and Rejected Messages and Polices Tab Sections?
Dashboard Tab: This is used to monitor the Recent Instance IDs and State of Instances whether it is
running or completed, click an instance to access a flow trace of the application and you can monitor the
Recent Faults and Rejected Messages occurred, Component Metrics, Services and References
Component Metrics: The name and type of service components used in this SOA composite application,
the number of running and total instances, and the number of recoverable and no recoverable faulted
instances for each service component
The service components like [BPEL, Mediator] in a SOA composite application appear in the component
metrics
Services and References: The name and type of service (inbound) and reference (outbound) binding
components and components and type of services [Web services ]used in this SOA composite
application, the number of binding component faults, the total messages processed, and the average
message processing time.
Binding components connect SOA composite applications to external services,
Binding components are organized into two groups:
Services: Services Provides the outside world with an entry point to the SOA composite application. The
WSDL file communicates with external applications (for example, through SOAP).
References: Enable messages to be sent from the SOA composite application to external services
Instances Tab: It is used to search the instances by Instances id, name, conversation id and start time
And used to delete the instances with criteria and you can view the log messages of composite instances
Faults and Rejected Messages Tab: It is used to Recover the errors, search by Error message contains,
fault id, composite instance id it displays including the error message, whether you can recover with
options from the fault, Delete rejected messages, the time at which the fault occurred, the fault location
(service, service component, or reference), the instance ID of the SOA composite application, and a link
to log files describing the fault.
Policies: You can attach or detach security policies to and from currently deployed SOA composite
applications. Policies apply security to the delivery of messages
You can attach and detach policies at the following levels in SOA composite applications, Service
components, Service and reference binding components
How do you Recover SOA Composite Application Faults at the SOA Infrastructure Level
You can monitor and perform individual and bulk fault recoveries for BPEL process and Oracle Mediator
service components across any number of SOA composite applications
To recover from SOA composite application faults at the SOA Infrastructure level:
3) Select faults for recovery using one of the following options. Fault recovery selection at the SOA
Infrastructure level matches the SOA composite application level and BPEL process and Oracle Mediator
service component levels.
4) Select an action from the Recovery Action list.
5) If you want to perform a bulk recovery of messages, click Recover with Options.
This page displays the Recover with Options dialog for specifying criteria for recovering BPEL and Oracle
Mediator messages of all composites directly from the database. Human workflow faults can also be
recovered, but not directly from Oracle Enterprise Manager Fusion Middleware Control. Instead, the
audit trail provides a link to the Oracle BPM Worklist
Business event and business rule messages cannot be recovered.
Specify criteria. Retry and Abort are the only recovery actions permitted
Note:
55
For bulk fault recovery at the SOA composite application level, a check of the state of the composite is
performed. If the state of the composite is set to off, a message is displayed warning you that a recovery
cannot be performed.
=====================================================================================
Configuring BPEL Process Service Engine Properties:
You can configure BPEL process service engine properties, which are used by the BPEL process service
engine during processing of BPEL service components.
Audit Level:
o Off: Composite instance tracking and payload tracking information is not collected.
o Inherit: Logging equals the SOA Infrastructure audit level. This page overrides or inherits the
tracking set at the SOA Infrastructure level.
o Minimal: The BPEL service engine does not capture any audit details. Therefore, they are not
available in the flow audit trails. All other events are logged.
o Production: The BPEL service engine does not capture the payload. The payload details are not
available in the flow audit trails.
o Development: Allows both composite instance tracking and payload tracking. All events are
logged. However, it may have an impact on performance. This level is useful mostly for
debugging purposes.
Audit Trail Threshold: Enter the maximum size in bytes of an instance audit trail before it is chunked
and saved in a dehydration store table separate from the audit trail. If the threshold is exceeded, the
View XML link is shown in the audit trail instead of the payload. Default 50MB
Large Document Threshold: Enter the maximum size of a generated document within a BPEL process
component instance before it is stored in a separate table in the dehydration store. Default 100MB
Dispatcher System Threads: Specify the total number of threads allocated to process system
dispatcher messages generated during runtime. Default 2
Dispatcher Invoke Threads: Specify the total numbers of threads allocated to process invocation
dispatcher messages are generated for each payload received; higher thread counts may cause
greater CPU utilization. Default 20
Dispatcher Engine Threads: Specify the total number of threads allocated to process engine
dispatcher. Engine dispatcher messages are generated whenever an activity must be processed
asynchronously higher thread counts can cause greater CPU utilization. Default 30
Payload Validation: Select to enable validation of inbound and outbound messages. This setting is
independent of the SOA composite application. If payload validation is enabled at both the service
engine and SOA Infrastructure levels, data is checked twice: once when it enters the SOA
Infrastructure, and again when it enters the service engine.
Disable BPEL Monitors and Sensors: Select this checkbox to disable all BPEL monitors and sensors
defined for all BPEL components across all deployed SOA composite applications.
==============================================================================
Capture Composite Instance State: captures the SOA composite application instance state.
Whether it is Running or Completed, If you not selected this you will get unknown state
This activates the Abort button on the Instances page of a SOA composite application. Else no
Disable fetching of instance and fault count metrics: Select to disable the display of instances
(failed, completed) and fault count metrics on the following pages: - on Dashboard pages of the
SOA Infrastructure, SOA composite applications, service engines, and service components. This
setting can improve the time it takes to load pages.
Set default search criteria to fetch recent instances and faults only within a recent duration
(applies to lists of instances and faults): can search for instances. When you select this checkbox
and specify a time period, the Show All links change to Show More links - on the Dashboard
pages of the SOA Infrastructure, SOA composite applications, service engines, and service
components.
=====================================================================================
Configuring Oracle Mediator Service Engine Properties:
You can configure Oracle Mediator service engine properties, which are used by the Oracle Mediator
service engine during processing of Oracle Mediator service components.
Metrics Level: configuring the Dynamic Monitoring Service (DMS) metrics level. DMS metrics are
used to measure the performance of application components. Enabled/Disabled
Parallel Worker Threads: Specifies the number of parallel dispatchers for message processing.
Increase this parameter to increase the number of outbound threads for parallel processing.
Default 4
Parallel Maximum Rows Retrieved: Specifies the number of rows retrieved per iteration for
parallel processing. You can set the value of this parameter to 50 to 100 times
Parallel Locker Thread Sleep (sec): Specifies the idle time between two successive iterations for
retrieving rows
Error Locker Thread Sleep (sec): You can configure the error/retry infrastructure by setting this
property. This property specifies the idle time between two successive iterations for retrieving
errored out messages
The heartbeat infrastructure is a part of the Oracle Mediator service engine and detects the
absence of an Oracle Mediator service engine instance due to failure or shutdown of a node.
Container ID Refresh Time (sec): Specifies the time interval at which the heartbeat thread
periodically updates the time stamp associated with each Oracle Mediator service engine's
unique identifier.
Container ID Lease Timeout (sec): Specifies the time interval at which the heartbeat thread
periodically checks if there are unique identifiers that have not been updated for a particular
period of time.
Resequencer Locker Thread Sleep (sec): Specifies the sleep time in seconds for a deferred locker
when there is no message in the database
Resequencer Maximum Groups Locked: Specifies the maximum number of groups locked.
Resequencer Worker Threads: Specifies the number of resequencers.
What are the steps to configure External Adapters?
1) If adapter is not available then download from oracle site and deploy in Admin Console
59
2) Configure the adapter: Environment + Deployments: deploy particular adapter: by click install
Drill on installed adapter:
3) click configuration tab: Outbound connection pools: -
4) configure connection properties from collecting particular sys admin and save new JNDI name in
Plan.xml
5) Now redeploy the Adapter with new JNDI Name in Plan.xml and start it
Below are the some of the reasons the instances to go to manual recovery.
1. There are not enough threads or memory to process the message.
2. The server shuts down or crash before it finishes processing the BPEL message
3. The engine could not finish processing the message before reaching the time-out as dictated by
the transaction-timeout configuration
1) Login to EM console
2) Right click on soa-infra ,Click on Service Engine: BPEL
3) Click on Recovery tab
4) Change the Type accordingly(Invoke, Activity, Callback) and the Message state to “Undelivered”
and click on search
5) All the recoverable messages that match the criteria will be displayed.
6) Select the required messages and click on Recovery button.
Configuring Oracle BAM Adapter connection factory through EM console– Oracle BAM 11g
Steps to configure the BAM Adapter:
Business Activity Monitoring is a tool that is useful in monitoring business services and processes. It
actively collects data, applies rules and reports information to users. When something goes wrong in
business processes, BAM can be configured to take corrective measures such as emailing
administrators/support team.
Go TO : Weblogic Admin Console : Deployments : Bam Adapter resource File (click it)
Click eis/bam/rmi link
Select Create A new Alert: and Select Create a Rule as shown below
Go to Em Console and copy faultmgnt appln wsdl URL and paste here and click “Display
Operations” and click Map parameters then give the required details of fault mgnt details
And click ok to complete the Alert
NOTE: Whenever the data filed changes in data object in BAM Server it generates an instances in Fault
Mgnt Application
1 2 3
==============================================================================
The Oracle BAM web applications properties are configured in the BAM Web Properties page in Fusion
Middleware Control.
1. Go to the BAM Web Properties page in Fusion Middleware Control by selecting the
OracleBamWeb node in the BAM folder.
2. Choose BAM Web Properties from the BAM Web menu.
3. The BAM Web Properties page opens.
4. Enter the appropriate values in each of the fields provided.
1) 2) 3)
Login to OSB console by URL: http://localhost:7001/sbconsole and give username and password
3. Select project you created and Again click “Create Button” and select from Create Resources
option: “Resource from URL” for creating External Service
4. Follow previous steps For creating “Business Service” select from Create Resources option:
“Business Service”
5. After selecting Business Service you will navigate to following page
6. For WSDL Web service option click on Browse button you will go to another page click
BAMExternalService next select BAMExampleProcedss_pt under Ports click “submit” and “save”
the Business service
7. Follow previous steps For creating “Proxy Service” select from Create Resources option:
“Proxy Service” and you will get next page
71
Give Service Name and For Business Service option filed click on Browse you will go to another page
select BAMBusinessService and click “submit” and “save” it
Now come to Resource Section by clicking of your project and click Sun Symbol In actions section for
BAMBusinessService link
A new window will be opened with xml details you give a name and dept and click “execute” button
Now Check the details it will be updated in BAM Server at Employee Data Object
Note: Here we are accessing the BAM Example in SOA through OSB to update the Details in BAM Data
Object
=============================================================================
What is Basic difference between BPEL and ESB (Enterprise Service Bus)?
1). An ESB on the other hand is a piece of infrastructure software that provides APIs for developers to
create services and send messages between services.
2) ESB is good for routing message to multiple destinations. It is also good for doing transformations that
have little to no business rules.
3).BPEL is used for bringing together multiple services. There is much more functionality and allows
implementation of complex business logic.
4).Exception handling can be done in BPEL.
5). ESB does not have the sensors which can be used to monitor the activities that can send actions to
BAM or DB/JMS.
6).BPEL can use Business Rules, Human Task and Notifications.
7). BPEL primarily used for Orchestration, Data enrichment and also for Human interactions where as ESB
is used for Store and forward transport data.
Every line in the crontab file contains six fields, each separated by a space. A field may contain
more than one value, each separated by a comma. An means ``all values".
The fields are:
1. minute: values are 0 to 59.
2. hour: legal values are 0 to 23.
3. date of the month: 1 to 31.
4. month: 1 to 12 (Jan - Dec).
5. day of the week: 0 to 6 (Sun - Sat).
6. Bourne shell command.
psrinfo Command
To determine the number of processors in the system and their speed use the psrinfo -v command. In
Solaris 10, -vp prints additional information.
# vmstat 3 -The command vmstat reports information about processes, memory, paging, block IO, traps,
and cpu activity.
75