5.000.000 Messages per Day Handled by Oracle Service Bus 11g by Pavel Samolysov
April 5, 2017 Leave a comment
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. Actual data can be retrieved from the database using an id and a changed entity type because there is a database view for each type of entities, the bus has a concern in. The OSB instance polls the events using the database adapter and selects a corresponding record from a database view. The content of the retrieved record is transformed to the canonical data model of the service bus, from zero till five messages are generated for one database record. The messages are put in a JMS-queue, and the corresponding records in the database marked with the "in process" flag.
In order to send messages into a destination application, there is the OSB proxy-service gets messages from the JMS-queue, transforms it from the canonical model to a destination format, and calls a web-service provided by the destination application. The proxy-service waits for a service response, retrieves a status of handling from this one and put the status into a statuses queue. The bus gets the status from the queue and updates a corresponding record in the event table of the source application database.
Read the complete article here.
For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.
Blog Twitter LinkedIn Facebook Wiki
Technorati Tags: SOA Community,Oracle SOA,Oracle BPM,OPN,Jürgen Kress