background preloader


Facebook Twitter

Pavel Samolysov's Website: 5.000.000 Messages per Day Handled by Oracle Service Bus 11g. Hello everyone! Let me share a story about how to build an enterprise service bus (ESB), which connects together a number of legacy application and a new-born centralized information system, and how Oracle Service Bus (OSB) can help handle up to 5.000.000 messages in a day ensuring guaranteed delivery. Challenge Every data change from a one application (a source) must be synchronized with another application (a destination) in the near real-time mode, batch processing is not a solution.

So, the changes need to be captured and free to publish on a service bus. The following pattern works fine: when a user changes data in the source application, a trigger in an application database creates a record in an event table. Let's name a record in the event table as a "event". A event is specified by an id; a changed entity type; an operation, such as to create, update or delete; a state, such as new, in process, successful processed, unsuccessful processed.

Put me in production! Tuning JVM Hardware. SOA Suite 12c: The Star of the SOA Suite 12c - The Pipeline - AMIS Oracle and Java Blog. Every new product release has a star. And of course picking that star is arbitrary. One person’s favorite feature may not be someone else’s. My pick of the 12c crop is … (drum roll) …. the Pipeline! The Pipeline is new – to some extent. In Service Bus 12c, instead of a Proxy Service that contains a Message Flow as we used to have in previous incarnations of OSB and Aqualogic Service Bus, we now have two separate components: the Proxy Service and the Pipeline (which contains the Message Flow).

Example: Service Bus project – exposing a SOAP WebService proxy service (AircraftMovementService), implemented by a Pipeline (the green component in the middle) that invokes an outbound JMS Adapter through a business service: Compared to the 11g situation, where the message flow was encapsulated within a single proxy service, pipelines in 12c are a huge step forward. Pipelines can be reused: multiple proxy services (and/or multiple pipelines) can invoke the same pipeline – directly or indirectly. Oracle SOA-Direct Binding vs. SOAP sobre HTTP. Si eres nuevo por aquí, puede que quieras suscribirte al RSS feed. ¡Gracias por visitarnos! En la mayoría de las soluciones software, ya sean desarrollos a medida o uso de productos específicos, llega un momento en el que nos tenemos que enfrentar a la difícil fase de optimización de la solución para poder obtener un mejor rendimiento.

Entre las distintas acciones que podemos aplicar encontraríamos, desde optimizaciones de los algoritmos utilizados hasta acciones que dependen del producto sobre el que está desplegada nuestra solución software. Por ejemplo, si utilizamos productos Oracle, podríamos deshabilitar el audit level en los procesos BPEL o evitar un uso excesivo de XPath mediante variables en el bus. ¿Pero qué pasa con las comunicaciones? En las arquitecturas SOA no sólo afectan al rendimiento la calidad de los algoritmos utilizados sino que también las comunicaciones pueden repercutir en los tiempos de respuesta. Antes de empezar ¿qué es y qué proporciona SOA-Direct Binding?

Java / Oracle SOA blog: WS security in OSB. In OSB you can protect your WSDL proxy services with XML Signature / encryption, authentication or your own custom ws-policy. In this blog entry I will give you all the information how to do this.First we start by adding a standard OSB WS-Policy. Open the WSDL of a proxy service where we add for example the signing policy. We always need to add wsp:UsingPolicy element else OSB won't detect the wanted security policy Add the Signing policy to a operation or put this in a other part of the WSDL see this url for more information.

In this case I can use wsp:Policy with a PolicyReference and the URI is policy:Sign.xml . If you want encryption then you can use policy:Encrypt.xml as URI or use policy:Auth.xml for ws authentication. You don't have to use the OSB standard policies, you can also add your own ws-policy ( in OSB 10.3 you can only use the policy definition of WLS 9, so don't expect you can make policies which uses the 2005 or 2007 WS-Security standard).

With this as result. Enabling outbound 2-way SSL connections from OSB | Page 2. Understanding Oracle Service Bus Security. Oracle Service Bus supports open industry standards for ensuring the integrity and privacy of communications and to ensure that only authorized users can access resources in an Oracle Service Bus domain. It uses the underlying WebLogic security framework as building blocks for its security services. The WebLogic security framework divides the work of securing a domain into several components (providers), such as authentication, authorization, credential mapping, and auditing. You configure only those providers that you need for a given Oracle Service Bus domain. The following sections introduce the Oracle Service Bus security model and its features: 45.1 Inbound Security Inbound security ensures that Oracle Service Bus proxy services handle only the requests that come from authorized clients.

Proxy services can have two types of clients: service consumers and other proxy services. You set up inbound security when you create proxy services and you can modify it as your needs change. Note: Oracle Pedigree and Serialization Manager Installation Guide. Browser version script Skip Headers Some components are only needed if you are using serial destinations functionality. Not all components will be needed. The set up of each component is based on the functionality being used. It does not hurt to set them all up, even if all of them are not going to be used. This appendix covers the following topics: Creating a JDeveloper Project To support user-configurable setup of serial destinations, composites were created within Oracle SOA Suite to manage the business process flow of transmitting serials. To Install Oracle JDeveloper: If you do not already have Oracle JDeveloper installed, you can download a free copy at: To Unzip JARs: Within the "" file that is included as part of the Oracle Pedigree and Serialization Manager download, there is a file called

To Create an Application in JDeveloper: Open Oracle JDeveloper. 25 Using the JCA Transport and JCA Adapters. Service Bus provides a J2EE Connector Architecture (JCA) transport that interacts with back-end Enterprise Information Systems (EIS), letting these systems participate in the Service Bus integration environment. The JCA transport provides native connectivity between Service Bus and external systems, letting those systems interact in the service bus layer and leverage the capabilities and features of Service Bus. For a list of adapters the JCA transport supports, see Section 25.1.1, "Supported JCA Adapters.

" In JCA proxy or business services, the JCA transport works in conjunction with a built-in JCA adapter framework and JCA-compliant adapters to interact with EIS systems, as shown in Figure 25-1. Solid arrows signify request, dotted arrows signify response. JCA proxy services listen for inbound requests from supported JCA adapters, and JCA business services invoke EIS endpoints through supported adapters. 25.1.1 Supported JCA Adapters AQ Adapter Oracle BAM 11g Adapter. Raastech Blog: "Use Chunked Streaming Mode" in OSB 11g. Problem: We experienced 3 issues in the behavior of our OSB 11g installation on ExaLogic: 1. Client requests get a read timed out error 2. The BEA-380000 error "Request Entity Too Large" appears in the logs 3.

Solution: 1. 2. For all Proxy Services, View Message Flow, Edit Route Node(s), check on "Quality of Service" and set it to "Exactly Once".Explanation: The problem described above seems specific to OSB 11g running on ExaLogic with ExaLogic optimizations enabled. <exalogic-optimizations-enabled>true</exalogic-optimizations-enabled> By disabling chunking (with the ExaLogic optimizations enabled), all 3 problems described above are eliminated. Understanding Chunked Streaming Oracle documentation states that the Chunked Streaming Mode property should be selected "if you want to use HTTP chunked transfer encoding to send messages. " Chunked transfer encoding is an HTTP 1.1 specification, and allows clients to parse dynamic data immediately after the first chunk is read.

References: Ragzzz SOA Blog: Understanding Transaction handling within OSB. Understanding Transaction handling within OSB In this post I will explain how transactions are handled within OSB. Transactions are implicitly marked, in OSB developer there are no EXPLICIT actions to commit/rollback the transaction. However you can influence boundaries/commit/rollback transactions in your process flow. To explain this, i would use an example which uses JMS transport. Example flow, Inbound JMS Q → OSB Proxy service (pick message)- > Business service (push message) → Outbound JMS Q Few parameter configurations that should be understood before moving forward. “Same transaction For Response” Check box: Request pipeline in proxy service is executed in one thread and the response pipeline is executed in another thread. This setting can be found in proxy service's->Message handling configuration page. “QOS”(Quality of service): ExactlyOnce – the callee will participate in the same transaction as the caller.

With respect to JMS transport, “is XA enabled” – should be checked. Application Data Integration: Usage of Chunked Streaming Mode Usage in Business Service of OSB 11g. Java mon amour: OSB. chunked transfer encoding. Lakshmi Mavillapalli 's Blog : EJB and JEJB Transport in OSB. What is EJB/JEJB Transport: The EJB transport is only available for business services whereas the JEJB transport can be used both on a proxy service as well as for business services.EJB protocol enables us to create a business service which doesn’t stands for a SOAP / HTTP of File service, but for a remote EJB.

This allows us to let our OSB clients or our own composite proxy services to communicate with EJBs with a simple SOAP xml message.JEJB protocol allows us take POJOs and make them available as they were EJBs. Here, the XML interface we will expose will only contain a reference to a Java object, and not its XML content. Introduced in OSB 11g.EJB Transport Uses Java Webservices Framework to invoke remote EJBs.JEJB Transport uses an RMI serialization /deserialization cycle and passes Plain old Java Objects(POJO)directly through the OSB to the remote EJBs.Using JEJB transport we can export a proxy service as a stateless session bean.JEJB Transport Advantages: Example:: enable java cache.

OSB 11g Asynchronous Request Response with 11gR1 SOA Composite | The Real Ranch!!! OSB 11g Asynchronous Request Response with 11gR1 SOA Composite Posted by Sandeep Phukan on October 2, 2010 · 1 Comment SOA 11gR1 now provides the soa-direct transport which makes it possible to use the RMI based transactional Weblogic T3 Protocol to communicate between OSB and SCA. I am not quite sure how much this is different from the sb transport already available with the earlier versions, but the current SOA 11gR1 version insists that the recommended twisted approach is to use a combination of both soa-direct and sb for the Asynchronous Request Response pattern.

The Request from OSB to SCA is sent via soa-direct transport while the callback from SCA to OSB happens via the sb transport. In essence, the flow comprises two one-way OSB flows: one for the request and the other for the response. I fail to understand why a combination of sb and soa-direct transports are required. Let’s go about creating it then. The sequence of tasks to be performed for this Sample is: 1. 2. 3. 4. 5. 6. Dive in SOA: OSB hands on: JMS Producer Consumer Example. In this blog I have tried to show how we can use OSB business service and Proxy service to implement a JMS producer consumer example. Our objective is to build an OSB project which will do the following. Create a sample Schema which represents data structure to be used We need to create a Simple Schema which is used for reading and Writing data from JMS Queue/Topic This Schema is referred from OSB Business Service as well as Proxy Service.

Configure “JMSProducerBIZ” OSB business Service: Step 1: In General Configuration Tab use “Messaging Service” as Service Type. Step 2: In Messaging tab use “xml” as “Request Message Type”. Step 3: In Transport configuration tab make below configuration. Step 4: In JMS transport tab make below Configuration Configure “JMSProducerToTopicBIZ” business service : Step 1 and Step 2 remains same as mentioned in above configuration steps. We have to make JMS Transport configuration settings like below Configure “JMSConsumer.proxy” Service Test: Destination Topic:

Integration Spot by Arun: JMS Queue - Difference between a Queue and a Topic. This is a typical interview question: What is the difference between a Queue and a Topic ( or Queue Vs Topic). Before you go for the comparisons you need to learn the basics such as what is a JMS Queue what was the purpose of this technology and so on...

I would like to point you to this wiki page: Topic: Java Message Service After you have reviewed the above page you might have understood what is the difference already. But for those who are time short... read on. First Elements of an JMS Queue: JMS provider An implementation of the JMS interface for a Message Oriented Middleware (MOM). JMS client An application or process that produces and/or receives messages. JMS producer/publisher A JMS client that creates and sends messages. JMS consumer/subscriber A JMS client that receives messages. JMS message An object that contains the data being transferred between JMS clients.

JMS queue A staging area that contains messages that have been sent and are waiting to be read. Source: Java Message Service. Global Transactions and Quality of Service in OSB. Last week I had a great OSB BlackBelt training of Samrat Ray and organized by the SOA Community In this training we talked a lot about Global Transactions ( XA), QoS ( Quality of Service ) in combination with Transports and JCA Adapters. Because this is so important ( you dont want to lose a Message ) I decide to make a blog about this subject and I will explain the different scenarios options you have in the Oracle Service Bus. Before I can start I need to create and configure some Queues. In this blogpost I will use JMS for the Proxy and the Business service but you can also use EJB, MQ or the Direct Binding ( SOA Suite 11g ) for the Business Service, they all support XA, HTTP transport does not support XA ).

First create the RequestQ Queue combined with an ErrorQ Queue ( Now failed messages will be redirected to this Queue and won't be lost in Space), a ReponseQ Queue and a DestinationQ Queue ( used in the Business service ) I start with a simple scenario. OSB 11g - Sending Email From Oracle Service Bus Part-1 - Oracle Fusion Middleware Blog. Albin's Blog: Initiating an OSB Service with Email. Email transport will help us to send/receive emails in OSB. Some cases we may required to initiate the external service based on the email in the user inbox. The Proxy service polls the Mail Inbox for the new messages and invokes the Business service whenever there is a new message in the Inbox.The polling interval can be specified in the Proxy Service configuration.Here i will explain about invoking the service with the XML message received from the email body. Create a XSD message structure that will be used by Proxy Service to receive the message Create a OSB project and create a Business service that needs to be invoked based on the Email content - Here i am invoking a sample BPEL service with the same XSD structure as input.

Create a Service Account with Static username/password of email user. Create a Proxy Service with Service Type as Messaging Service Select the Request Message Type as XML and Response Message Type as None Testing: JMS Transport. Part V. 7 Creating and Configuring System Resources. 1 Learning About Oracle Service Bus. 4 Monitoring Oracle Service Bus Alerts. Ruteo de Servicios Web con Oracle Service Bus (Parte 1) OSB best practice | Oracle Fusion Middleware Blog. Raastech_2013_DOAG_Whitepaper_OracleSOATipsAndTricks.pdf. Oracle Adapters Performance Tuning - 11g Release 1 (11.1.1)

Get Started: Oracle Service Bus 11g communication with Oracle SOA Suite 11g, DirectBindings and SOA-DIRECT, part2 - Oracle .. Java .. OpenSource .. SOA. Business Services: Creating and Managing. All Things Middleware: OSB, Service Callouts and OQL - Part 1. Asynchronous service is not the devil! { How async services work and OSB+BPEL examples} | vrsbrazil. 7 Managing Partitions and Work Manager Groups. Using JCA Adapter with OSB (Oracle Middleware Blog) Publications - Insemble. Flat file to xml with Oracle Service Bus.

Oracle SOA Suite 11g: Wiki: OSB. OSB 11g - Read or Poll File in OSB - Oracle Fusion Middleware Blog. Modeling Message Flow in Oracle Service Bus.