Hi Ingo,

I hope you are well!

Have you tried with mode="sync" instead of mode="async"? It should run both
services simultaneously.

runSyncIgnore is noting but calling service in sync mode without expecting
the output of the service.

If you wanna call services inline you can even try addCommitService.

HTH!

-- 
Thanks & Regards
Pawan Verma
ofbiz.apache.org


On Sat, Apr 25, 2020 at 11:36 AM Suraj Khurana <suraj.khur...@hotwax.co>
wrote:

> Hello Ingo,
>
> Hope you are doing good.
>
> I am not sure about the environment you are currently trying to achieve
> this. IMO, there are two ways:
>
> - For improving performance, we can set up multiple OFBiz servers in
> parallel. Yes, we can set up two OFBiz servers, one calling sync service
> and another dedicated for async services only.
> Here [1] is a reference blog for more details.
>
> - You can increase jobs count in service engine [2], so that your OFBiz
> server will be picking more jobs to complete at a time, be careful various
> factors are responsible with this approach, like CPU core, deployed OFBiz
> memory allocation, maximum DB threads enabled etc.
>
> [1]
>
> https://www.hotwaxsystems.com/ofbiz/ofbiz-tutorials/apache-ofbiz-performance/
> [2] framework/service/config/serviceengine.xml
>
> HTH.
> --
> Best Regards,
> Suraj Khurana
> Senior Techincal Consultant
>
>
> On Fri, Apr 24, 2020 at 11:01 PM Ingo Wolfmayr <ingo.wolfm...@wolfix.at>
> wrote:
>
> > Hi everybody,
> >
> > I want to run two or more services immediately after another service has
> > finished.
> >
> > For example printing creating/printing the invoice and starting the pick
> > process should be done immediately after orderchange  Invoicing and
> picking
> > are two different processes that should be initiated at the same time.
> > Picking should not wait until the invoice process is finished.
> >
> > Right no I have:
> >
> > <eca service="changeOrderStatus" event="commit"  run-on-error="false">
> >        <condition field-name="orderTypeId" operator="equals"
> > value="SALES_ORDER"/>
> >         <condition field-name="statusId" operator="equals"
> > value="ORDER_APPROVED"/>
> >         <condition-field field-name="statusId" operator="not-equals"
> > to-field-name="oldStatusId"/>
> >         <action service="createInvoiceBeforeShipment" mode="async"
> > persist="true"/>
> >         <action service="sendOutputRequest" mode="async" persist="true"/>
> > </eca>
> >
> > The problem with that is, that if there are other tasks in the queue
> (solr
> > product update, ...) it may come to unwanted delays.
> >
> > Would runSyncIgnore work?
> >
> > It would be great if I could use th eca service definitions to to it.
> >
> > Best regards
> > Ingo
> >
>

Reply via email to