2009-02-24 5 views
13

Ein Kapitel in Pragmatic Programmer empfiehlt die Betrachtung einer Blackboard/Space-basierten Architektur + einer Rules Engine als flexiblere Alternative zu einem herkömmlichen Workflow-System.Weltraumbasierte Architektur?

Das Projekt, an dem ich gerade arbeite, verwendet derzeit eine Workflow-Engine, aber ich möchte Alternativen bewerten. Ich habe das Gefühl, dass ein SBA eine bessere Lösung für unsere geschäftlichen Probleme sein könnte, aber ich mache mir Sorgen über einen totalen Mangel an Community Support/User Base/Vendor/Optionen.

JavaSpaces ist tot, und der JINI Spin-off Apache River scheint auf Lebenserhaltung zu sein. SemiSpace sieht perfekt aus, aber es ist eine Ein-Mann-Show. Die einzig gangbare Lösung scheint GigaSpaces zu sein.

Ich würde gerne Ihre Gedanken zur raumbasierten Architektur und zu Ihren Erfahrungen mit realen Implementierungen hören.

Antwort

1

Warum betrachten Sie Javaspaces als tot, abgesehen von der Tatsache, dass das Release von Jini 2.1 vor einiger Zeit (Oktober 2005) war? Wenn ich das benutze, würde ich vorschlagen, dass es ein ausgereiftes und vollständiges Technologie-Set anzeigt, anstatt etwas aufgegeben und verstört zu haben.

Für eine weitere Implementierung von Javaspaces, werfen Sie einen Blick auf Blitz Javaspaces. Diese wird regelmäßig aktualisiert und verbessert (neueste Version Juli 2008) und bietet eine leistungsfähigere und leichter zu verwaltende Javaspace-Implementierung als die von Sun bereitgestellte Standardeinstellung outrigger.

+0

Hallo Brian, Ich sagte Javaspaces tot war, weil die Jini spec (von denen Javaspaces ist ein Teil) und Sun-Implementierung auf einem Apache-Inkubator-Projekt (Fluss), die begrenzte Unterstützung zu haben scheint verschoben wurde. JMS, JCR, JPA usw. sind ebenfalls Beispiele für ausgereifte Spezifikationen, aber sie haben aktive Gemeinschaften. – rcampbell

1

Gigaspaces ist eine erfolgreiche kommerzielle Implementierung von JavaSpaces - also würde ich JavaSpaces nicht für tot erklären.

Sie können sehen, Java Shared Data Toolkit (also this article), um zu sehen, ob es Ihren Anforderungen entspricht.

+0

Ich sollte meine tote Aussage klären. Es gibt Spezifikationen/APIs/Standards, die aktiv gepflegt werden, reichhaltige Communities haben und mehrere solide Implementierungen zur Auswahl haben (denke JMS, JPA, sogar etwas wie XML oder JSON). Ich rufe JavaSpaces tot auf, weil es keine dieser nützlichen Attribute hat. – rcampbell

+0

Hinzufügen: Ich betrachte GigaSpaces und SemiSpaces, aber meine Frage war wirklich breiter: Wer hat diese Archetektur benutzt und was halten sie davon? Ich möchte Horror-/Erfolgsgeschichten, Vergleiche, Gedanken, etc. Das Problem ist, es sieht so aus, als ob niemand mit dieser Art von Erfahrung da draußen ist. – rcampbell

+0

Aber jetzt, ist es tot? – wener

0

Obwohl es die JavaSpaces-API nicht unterstützt, würde ich vorschlagen, Oracle Coherence für einen verteilten und zuverlässigen "Live" -Datenspeicher zu betrachten, der einen ereignisbasierten Workflow steuern kann. Die Deutsche Bank zum Beispiel hat erfolgreich eine "SBA" (Space Based Architecture) durch ein ereignisgesteuertes System ersetzt, das auf Coherence für ihren FX-Handel aufbaut, und zwar aufgrund von Zuverlässigkeit und Performance-Problemen.

Aus Gründen der vollständigen Offenlegung arbeite ich bei Oracle. Die in diesem Beitrag geäußerten Meinungen und Ansichten sind meine eigenen und spiegeln nicht unbedingt die Meinungen oder Ansichten meines Arbeitgebers wider.