cancel
Showing results for 
Search instead for 
Did you mean: 

Difference between Synchronous & ASynchronous.

former_member644654
Participant
0 Kudos

Hi All,

I few queries:

1) Difference between Synchronous & ASynchronous communication?

2) How should we decide whether it is a Sync or Async scenario?

Regards,

Sreedhar.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Sreedhar,

Apart from the points already added by experts, i would like to add something.....

Synchronous Communication:

In synchronous communication, thereu2019s nothing like scheduling. Sender application executes a u2018singleu2019 Function call, receiver system immediately processes this function call dispatching the response to sender and then it performs implicit database commit.

However this communication is based on assumption that receiver system is available when function call is made. If this is not the case, the communication is seriously disrupted.

Asynchronous Communication:

Here receiver system is not necessarily required to be active at the time of function call. Instead, the call is placed in outbound queue of the sender system and then this call is repeated at regular intervals until receiver system processes the call.

Also Error handling in Synchronous communication: error messages sent back to sender. In Asynchronous communication: errors made persistent.

So conclusion: Queues play central role in asynchronous communication. Further in asynchronous communication, the calls can be executed either by tRFC (Transactional RFC) or qRFC (Queue RFC).

If business requirement is such that your sender system need to know the successful posting of message in the receiver system then approach for synch communication else asynch communication.

Regds,

Pinangshuk.

former_member644654
Participant
0 Kudos

Hi,

Thank you very much for the information given by you it has resolved my problem to the maximum extent but there is a small query that:

In Sender System if use Outbound Asynchronous way of communication then are we bound to use in the Receiver System Inbound Synchronous or would it be Inbound Asynchronous or depending on the requirement?

prateek
Active Contributor
0 Kudos

Its depending upon requirement. You may use any type of interface at inbound and outbound with any combination.

Regards,

Prateek

Answers (5)

Answers (5)

Former Member
0 Kudos

Hi,

Synchronous:

If message is waiting for acknowledgment from the target system then that scenarios is called Synchronous.

Ex. There are 2 file from sender side need to be processed. XI system will pickup 1 st file and send to the target system. Now sender has to wait to get the acknowledgment/response from XI system that file is posted successfully then only XI system will pickup the 2nd file for processing.

Asynchronous:

XI system will pickup the files from sender system and process and send it to the target system without waiting any response/acknowledgment. Doesn't matter whether posted successfully or not .

Thanks!

Shyamal Kumar

former_member200962
Active Contributor
0 Kudos
2) How should we decide whether it is a Sync or Async scenario?

Experts have already answered your first question.

For the second question, decision to make the scenario synchronous is made based on:

1) If the Sender application/ system is requesting for any response from the target system.

2) The sender/ target application supports synchronous communication.

3) Synchronous call wont take too much time to complete.

Regards,

Abhishek.

Former Member
0 Kudos

Hi,

Please go thru this link which will provide you with sufficient information.

http://help.sap.com/saphelp_nw04/helpdata/en/7c/a4f1b3c59aef4f8ea3c32cda0c0486/frameset.htm

Synchronous communication is typically used in the following application scenarios:

Sales and Distribution

· Creating a sales order in a different system (central sales).

· Performing an availability check for a particular material in response to an inquiry in the vendor system.

Asynchronous communication is typically used in the following application scenarios:

Materials Management/Sales and Distribution

· Sending business application documents to a vendor (for example, purchase orders, forecast delivery schedules, contract release orders), and ensuring that these application documents are only posted once in the target system.

santhosh_kumarv
Active Contributor
0 Kudos

>>1) Difference between Synchronous & ASynchronous communication?

A simple search would have got you the answer.... Sync is two way communication i.e. you send a request and get a response back... Async is one way communication i.e. no response is sent from the receiver...

>>2) How should we decide whether it is a Sync or Async scenario?

Depends upon the system and the business use case... you cannot receive a response from file system.. so Sync can't designed on File system.. DB can have both Sync and Async but again the business logic only decides to choose the scenario type. there is no thumb rule for this..

~SaNv...

Former Member
0 Kudos

Hi,

If Message flow is to and fro between two systems , it is called Synchronous.

OR

If both request and Response are involved in communication, it is called Synchronous.

Its like interactive communication. You ask Question and get Answer.

Asynchronous:

One Direction Flow is Asynchronous.

Message Flow between two systems is unidirectional No Response is expected.

I hope it answers you.

REgards,

Anurag Garg