Sprawdzanie czy dodano wartość bez ciągłego odpytywania bazy

0

Mam problem z Web API ,które dodaje zamówienie przez API programu.Kiedy jest duże zamówienie API programu dodaje ponad 1min i WEB API zwraca wtedy komunikat,że nie dodano zamówienia,które dodano.

-WEB API sprawdza co sek przez 60 sek czy pojawił się nowy nr zamówienia. Jeżeli tak to zwraca go.Jeżeli nie to pyta dalej ponad ten czas zwraca błąd.Mógłbym wydłużyć czas ale co w sytuacji jeszcze większych zamówień lub gdy się coś wykrzaczy i będzie pytać w nieskończoność

-Co zrobić gdy będzie jakiś problem i będzie czekać do końca świata ? Dodatkowo dzięki takiemu odpytaniu trochę szybciej zwraca wynik.Jak API programu dla 200 pozycji tworzy zamówienie około 1 min.To w bazie nr zamówienia pojawia się wcześniej i mogę go zwrócić szybciej np: po 20 sek.Tylko jak wejdzie 200 dużych zamówień to będzie ciągle odpytywać nawet 12 tyś razy

-Dodatkowo mają to po stronie frontedu moim zdaniem źle zorganizowane bo klient czeka cały czas tą 1min. Moim zdaniem powinni to robić w tle a klientowi zmienić status zamówienie z "oczekiwane" na "przyjęte"

Schemat

0

A dlaczego klient nie może otrzymać komunikat "przyjęto do realizacji po zakitowaniu otrzymasz mail potwierdzający".?

0

Ja bym sprawdził dlaczego to tak długo trwa bo to raczej nie jest normalne.

0
Gworys napisał(a):

A dlaczego klient nie może otrzymać komunikat "przyjęto do realizacji po zakitowaniu otrzymasz mail potwierdzający".?

Mogę to dogadać na to mam wpływ obecnie jak składa zamówienie to czeka na odpowiedź.W momencie jak jest duże np 200 pozycji to ponad 1min co jest nie do przyjęcia i dostaje komunikat "w realizacji".
Ja zaproponowałem aby po naciśnięciu "zamów" dostał od razu komunikat "oczekuje na akceptacje " i tyle a potem jak oba API skończą to zmienić na liście zamówień status na "W realizacji"

jacek.placek napisał(a):

Ja bym sprawdził dlaczego to tak długo trwa bo to raczej nie jest normalne.

Nie mam możliwości edycji API programu

1 użytkowników online, w tym zalogowanych: 0, gości: 1