Meine Firma bedient ihre Kunden derzeit mit einer Windows-basierten Fat-Client-App, in die Workflow-Verarbeitung eingebettet ist. Grundsätzlich fügt der Kunde eine Reihe von Dokumenten am Anfang des Workflows ein, die Dokumente werden über eine Reihe von Workflow-Schritten verarbeitet und nach einer gewissen Zeit wird die Ausgabe dem Kunden präsentiert. Wir erweitern derzeit die Größe für größere Kunden, indem wir die Anwendung auf anderen Rechnern installieren und den Cluster von Maschinen auf verschiedenen Dokumenten-Untergruppen arbeiten lassen. Nicht ideal, aber mit minimalen Änderungen an der Anwendung, erlaubte es uns, einfach auf unser aktuelles Niveau zu skalieren.Neufassung der Fett-Client-Anwendung als verteilter Arbeitsablauf
Das Problem, dem wir jetzt gegenüberstehen, ist, dass, da unsere Kunden uns größere Dokumentensätze zur Verfügung gestellt haben, wir mehr als erwartet für Maschinen, IT-Unterstützung usw. ausgeben. Also haben wir begonnen über die Re-Architecture nachzudenken Plattform, um es skalierbar zu machen. Ein Merkmal unserer Lösung ist, dass jedes Dokument unabhängig voneinander bearbeitet werden kann. Außerdem haben wir 10 Workflow-Schritte, von denen zwei der Schritte etwa 90% der Verarbeitungszeit beanspruchen.
Eine Idee, über die wir uns Gedanken machen, besteht darin, dem Dokumentenschema ein Workflowschrittfeld hinzuzufügen, um zu verfolgen, welcher Workflowschritt für das Dokument abgeschlossen wurde. Wir können dann den gesamten Cluster von Maschinen werfen, um an einem einzelnen Dokumentensatz zu arbeiten. Ein einzelner Computer wäre nicht für die sequenzielle Verarbeitung eines Dokuments über alle Arbeitsablaufschritte verantwortlich, sondern fragt die Datenbank für das nächste Dokument/Arbeitsablaufschrittpaar ab und führt diese Verarbeitung aus. Klingt das nach einem vernünftigen Ansatz? Irgendwelche Vorschläge?
Vielen Dank im Voraus.
Bob - Danke für die Antwort. Was Sie skizziert haben, ist das, was ich anfangs vorgeschlagen habe. – user481779