Ich habe eine Datenverarbeitung, die ich in einem Servlet namens "myServlet" (zum Beispiel) ausführe, manchmal bekomme ich eine Menge Daten zur gleichen Zeit zu verarbeiten, ich meine zur gleichen Zeit genau, ich brauche eine Möglichkeit, dem Client mitzuteilen, dass der Server ausgelastet ist.eine Möglichkeit zu überprüfen, ob das Servlet bereits verarbeitet - j2ee?
Ich habe versucht, ein Attribut im ServletContext auf false zu initialisieren, wenn die App startet, und dann, wann immer ich eine Anfrage erhalte, überprüfe ich, ob das Attribut false ist. Wenn es der Fall ist, ändere ich es in true So wird die nächste Anfrage fallen gelassen, solange ich gerade verarbeite. wieder funktioniert das nicht gut, wenn ich mehrere anfragen gleichzeitig bekomme, server verarbeite sie alle zur selben zeit, ich denke, dass einige anforderungen verschwinden, bevor ich das ctx-attribut auf TRUE ändere .... ich denke, dass ich fehlt bin etwas
, die Art und Weise ist ich frage mich, ob es Weg dorthin zu überprüfen ist, ob bereits eine Datenverarbeitung, so dass ich an diesem Punkt beenden und den Server ausgelastet Antwort an den Client
Hoffnung, dass Sie senden Jungs haben die Idee (das Problem)
dank im Voraus ...
Erstellen Sie einen Servlet-Endpunkt, der den Status eines Prozesses zurückgibt. Dann sollte der Client den Endpunkt regelmäßig oder bei Bedarf nach dem Status abfragen. Schreiben Sie im Backend Code, um den Status – Mechkov
zu behandeln, das ist eine gute Idee, das Problem ist, dass ich keine Kontrolle über den Client-Code habe, es ist eine API, die der Client verwendet, um Daten an den Server zu senden. !! –