I have run into a problem of Siebel Adapter performance issue.
I am using IS 6.0.1 and the input of my service is flat file. I parse a document list from the source flat file. And then my service loop over the document list. Then first my service searches Siebel system to see if the record has already existed there. If yes, my service will do update; and if not, my service will do insert.
But it takes about 30 hours to process a document list with 38,000 records on my server. That is too long for me.
My service did nothing else except for the Siebel QUERY, UPDATE/INSERT. And I use webMethods Siebel adapter to create those Siebel services.
What is up ? Why it takes so much time ? Could anybody help me ?
you’re problem is not the Siebel adapter, it’s the very long document list that’s the problem. IS is notorious for handling long document lists slowly. You should handle your input per record. By far the fastest is to write a small service that reads your flat file per line/record and then calls (Service.doInvoke(“interface:service”)) your parse service + siebel queries/updates. Alternatively, you could have your custom service publish a document with the raw record to which your parse service listens.
And currently I do write a main service to read the source flat file and parse it to record one by one. And each time when I get a record, I will call another service including those Siebel QUERY and UPDATE/INSERT services.
And I did a test to replace those Siebel services with “writeToFile” service, and it ended within 2 hours. And I was using the same source file in that test.