Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in


Asynchronous CICS Processing Question

Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CICS
View previous topic :: :: View next topic  
Author Message

New User

Joined: 03 May 2016
Posts: 12
Location: usa

PostPosted: Mon Mar 06, 2017 6:13 pm    Post subject: Asynchronous CICS Processing Question
Reply with quote

We have a new process that we implemented that is not working very efficiently.

Basically, we have a CICS program that receives a request for all customer information. The program then reads a customer master that has many (sometimes dozens) of trailers. Each trailer has a key to an account on a different application. The program cycles through the trailers sequentially, reads the information from the master indicated on the trailer and then formats part of a response back to the caller. When all of the trailers are processed, one full response is returned to the calling program.

The problem is that one application in particular is very slow for each individual response (we're not just reading a file on our system - we have to call a program that transmits the query out to another vendor and finally returns it back to the program) . So, if the customer has a lot of accounts on this application, we can sometimes time out when we're processing sequentially like this.

I started looking into processing the transaction asynchronously. I want to fire off all of my requests to the slow application first, process all remaining trailers and then come back and collect all of the responses that come back from my initial requests.

I was pretty excited when I saw the Run and Fetch APIs. They address exactly what I'm looking for. Unfortunately, we don't have that CICS version.

Instead, it sounds like START and RETRIEVE may be what I need to go with. Is it correct that I can shoot off a START for each one of my "slow" application requests and come back with a RETRIEVE at the end of my processing to pick them back up? If so, what kind of response do I get if the RETRIEVE isn't ready yet? Can I just move onto the next one (recycling through until I finally get them all)?

Or, is there a better way of doing this? i.e. Would it be better to have each of the started transactions write their responses to a temporary queue and just have my main, calling program read the queue as a final step? Or... something else?

Thanks for any input!
Back to top
View user's profile Send private message

View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CICS All times are GMT + 6 Hours
Page 1 of 1


Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Date and time format in CICS Chandru3183 CICS 2 Sat Mar 18, 2017 12:46 pm
No new posts CICS Question RE: Browse, Readnext an... moezbud CICS 7 Sun Mar 05, 2017 5:45 am
No new posts how to send just 10 rows in a CICS sc... Megha Gupta CICS 5 Thu Feb 23, 2017 6:57 pm
No new posts Mainframe Interview Questions CICS,CO... akshathan Mainframe Interview Questions 6 Thu Feb 09, 2017 6:38 pm
No new posts Limit CICS CPU resource vasanthz CICS 0 Tue Jan 31, 2017 7:09 am

Back to Top
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us