Search code examples
oracle-databaseosb

How does OSB 11g work?


I am very new to Oracle Service Bus 11g and I have been following some tutorials to get the basics about it but still it is not clear to me. Does it act like a proxy since we expose our services to go thorough it (OSB url). How can I configure a service to go through OSB?

Please provide some highlights on it.

Thanks.


Solution

  • To understand what the OSB is, it might help to read some basics about what an "Enterprise Service Bus" is, why it is needed and also a bit about the "VETRO" pattern.

    Yes, it can act like a pure proxy (in fact, the main component in OSB 11g is called a proxy) but it can also do a lot more. It might be helpful to visualise it this way: The OSB is mainly meant to expose an interface (SOAP/Rest/JMS/File/FTP etc), enrich and transform the incoming message if required and route it to a business service.
    In that sense you can consider it a "proxy" for a "business service".
    You can also do other things with the message within the "pipeline" of the proxy (all of the VETRO activities):

    • Message transformation (XSL/XQuery) and structural validation (schema validation)
    • Message enrichment (such as reading more data related to your main message from either a lookup list/database/some remote service


    In fact, recognising this, the "proxy" and "pipeline" are two separately configured components in Oracle Service Bus 12c where proxy deals with the interface and pipeline applies some logic.

    From a technical architecture point of view, the OSB can serve to decouple different systems with different message rates or capacities, availabilities or message types.


    References and citations below contributed by Bronek Dzikus (thank you): Any 'enterprise service bus' is like a connector-translator between systems. I can only add few links for further reading and to support the content here:

    Enterprise Integration Patterns - an integration of applications which Oracle Service Bus tries to realize.

    Get Started with Oracle Service Bus 11g

    Develop and Deploy OSB 11g

    ps. I you can choose the version of OSB try with newest.