cancel
Showing results for 
Search instead for 
Did you mean: 

Best practice: One inbound ABAP proxy channel or many...

js2
Product and Topic Expert
Product and Topic Expert
0 Kudos

What would be considered best-practice for scenarios where messages are sent to an ABAP system via ABAP proxy (SOAP XI30):

  1. Create a new receiver channel for each and every interface.
    This is kind of the default in iflow development unless you specifically choose to use a reference channel
    Enables you to use different user-id's to post your data into the ABAP system
    Can still change the parameters for all channels at once by using a HTTP destination to hold the logon details.
    Potential performance benefits.


  2. Create ONE receiver channel and re-use it with all interfaces that send abap proxy messages to the ABAP system.
    Could there be issues here with EOIO scenarios. What happens if an eoio message fails in the abap system - will other interfaces still be able to use that channel or is it totally blocked?
    Performance issues ?

There seems to be no guidelines around this available so would be great to hear some advice from SAP. Personally - I have always created a separate channel for each interface as to me its logically the right thing to do.... but maybe I'm wrong!

Regards...

Accepted Solutions (1)

Accepted Solutions (1)

engswee
Active Contributor
0 Kudos

Hi Jason

I normally go for 2. I don't see a real need to have one for each scenario, it's just redundant. Same approach for RFC and IDoc receiver, since all of these in general can be shared.

Failure during posting of EOIO messages will only affect the qRFC queues in the ABAP system and will not affect the channel in PI.

As for using different IDs, normally the proxy channel will use a technical/service user ID. If you need to pass the user context from the sender side, you can always go for principal propagation.

Rgds

Eng Swee

Answers (3)

Answers (3)

js2
Product and Topic Expert
Product and Topic Expert
0 Kudos

Thanks to those that have posted so far... In case I have confused you however, I'm not after Help - I've been using PI for years. Just thinking about a best practice which is a different thing...

My current thinking based on some offline discussions I've been having is that for ABAP stack systems that don't have iflows available then it is best to share/re-use the comm channels and only create extra ones for specific purposes - such as for prioritization of messages etc.

But, if you are on a java only system and building with iflows it becomes less clear as to which way is best, as when you create a new iflow by default you get two new channels - you just have to assign their type (RFC, SOAP, etc) and off you go. It is possible to replace a default iflow channel with a reusable (called a reference) channel but its a couple of extra steps.

a) java only abap proxy channels allow you to specify a http destination so you don't need to repeat the server details nor logon credentials across channels

b) We've had issues with reference channels being a bit buggy and have had SAP fix a couple of issues with notes...

😉

iaki_vila
Active Contributor
0 Kudos

Hi Jason,

I usually choose a mix of the two options. Depending of the business requirement. Normally in the ECC endpoint need to know the client that has access/modify/insert registers with the scenario. The client usually represents an organism and i work with parties.

For example taxes in the public sector, on the endpoint the functionals need to know if the tax is form education organism or another.

Regards,

Former Member
0 Kudos

Hi,

Must agree with Eng Swee Yeoh.,I did find a document regarding tuning your PI system. Its an excellent document and will help you understand these technologies a little better.


http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70c8bdb7-6fe0-2e10-5b86-a33fdb53f...


Regards,


Jannus Botha