cancel
Showing results for 
Search instead for 
Did you mean: 

Quality of Service

Former Member
0 Kudos

Hi,

I'm getting problem with the queue that it's using my channel. My channel has "Best Effort" in "quality of service". My scenario is synchronous SOAP-RFC.

I have been told to use "Exactly Once In Order" and use a queue only for my channel.

What are the differeces between that options? I have read this option is used only in asynchronous message processing. Is it correct?

Regards,

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

exactly, use Best Effort for sync scenarios.

Exactly Once in Order is used for async processing, where all message must be processed in order.

Exactly once is for async processing where this is not needed.

Peter

Edited by: Peter Jarunek on Mar 26, 2008 12:24 PM

Former Member
0 Kudos

Hi Peter,

My scenario is synchronous and I want to use my own queue. Is it possible?

Regards,

Former Member
0 Kudos

Hi Ismael,

there is no need to use a queue, if the scenario is sync.

Why do you think you need it? What do you need to achieve?

Peter

Former Member
0 Kudos

Hi,

Others message sometimes lock the queue, so I have been told to use an own queue to avoid conflict with other messages. Does it make sense?

Regards,

Former Member
0 Kudos

Hi,

i think Peter is right that queues are only needed in async scenarios.

You can read it also here:

/people/sap.india5/blog/2006/01/03/xi-asynchronous-message-processing-understanding-xi-queues-part-i

Regards

Patrick

Former Member
0 Kudos

Hi,

yes, it makes sense But when the scenario is sync, no queue is used, so nothing can be locked.. Sync scenario works like: you send a request and it is processed immediately(!), there is no queue mechanism.

What can stop the queue is EOIO - since the system checks the order of the messages, when an error occurs in some of these messages, all other in this queue (sent later) are HOLD. So first, this error must be solved and aonly ofter this other messages will go through.

Use Best Effort fo sync scenario. Always.

Peter

Answers (2)

Answers (2)

former_member238007
Contributor
0 Kudos

Hi Isamel.

The sender of a message uses the attribute Quality of Service (QoS) to determine how a message is delivered. The following types of quality of service are supported:

•BE (Best Effort):

The message is sent synchronously. The sender waits for a response before it continues processing.

•EO (Exactly Once):

The message is sent asynchronously. The sender does not wait for a response. The Integration Engine [Extern] guarantees that the message is sent and processed exactly once.

•EOIO (Exactly Once In Order):

Messages are delivered with the same queue names (supplied by the application) in the same sequence that they were sent from the sender system. Message processing is asynchronous in this case.

In the case of quality of service BE, an error occurs if more than one receiver is determined [Seite 468] for a message. In the case of delivery types EO and EOIO, the message is copied correspondingly and sent to the individual receivers.

Synchronous Message Processing (BE)

The message is not persisted by the Integration Engine. Once a message has been processed in the target system it performs an implicit database commit.

Asynchronous Message Processing (EO, EOIO)

The message is persisted by the Integration Engine at a predefined time and scheduled for processing using the queued RFC [Extern] (qRFC).

regards,

Kishore..

Former Member
0 Kudos