Nach vielen Supportfällen stellen wir fest, dass das größte Problem, das wir mit unserer GWT-basierten Anwendung haben, darin besteht, dass die Nutzer sie wochenlang offen lassen. Das bedeutet, wenn wir alle ein oder zwei Wochen einen Hotfix ausführen, sind die RPC-Stubs nicht mehr synchron und verursachen stumme Ausnahmen, die dazu führen, dass die Site "kaputt" aussieht. Kennt jemand eine Möglichkeit, dieses Problem automatisch zu erkennen und zu vermeiden? Ein paar Ideen, die ich hatte, sind ...
Irgendwelche Ideen?
Ich möchte eine vierte Option vorstellen.
Erstellen Sie einen RPC-Proxy und einen UI-Objektproxy, über den alle UI-Anforderungen und RPC-Anforderungen weitergeleitet werden. Auf diese Weise kann dieser Proxy, wenn er erkennt, dass etwas veraltet ist, das Widget dynamisch laden oder seine erwarteten RPC-Modelle ändern.
Das ist schön, wie Vaadin Dinge macht und es funktioniert großartig. Vaadin ist ein UI-Toolkit, das auf GWT basiert, falls Sie sich dessen nicht bewusst sind. In den letzten Jahren haben wir einige lang laufende Produktionsanwendungen verwendet, und wir haben einige Verbesserungen in ihrer UI Def-Sprache (UIDL) vorgenommen, um Versionsabweichungen hinzuzufügen.
Dieses Diagramm ist eine gute Darstellung dessen, was sie tun, und wenn Sie so etwas nicht selbst bauen möchten, würde ich Ihnen natürlich empfehlen, nach Vaadin zu ziehen.
Implementieren Sie die Sicherheit, mit der Benutzer nach einer Stunde Leerlaufzeit angemeldet werden. Vorausgesetzt, Ihre Releases sind über Nacht oder am Wochenende, melden sich die Benutzer nach der Veröffentlichung an. Keine Notwendigkeit, die App zu aktualisieren. Dies ist vor allem dann sinnvoll, wenn Ihre Site Benutzer zur Anmeldung benötigt.