2009-05-07 6 views
2

Ich meine, wenn ein Plugin wird [download and] kopieren andere plugin in entsprechenden Ordner oder eine Link-Datei, kann es dynamisch mit Plattform ohne Neustart integrieren?dynamic plug-ins management/Aktualisiert

So sieht es aus wie es möglich ist, einen immer-up-Server zu bauen, der sich rechtzeitig entwickelt, ohne neu gestartet zu werden. Ist es eine geforderte (nicht sicher über dieses Wort, Englisch ist nicht meine Muttersprache) Funktion? Ich meine, braucht das Geschäft oder ist es einfacher und in Ordnung, neu zu starten? Ein weiterer Vorteil, den ich sehe, ist eine Compartibility der alten Version ...

+0

so ist es möglich, erweiterbare Server-Anwendung zu machen, die verwaltet werden kann, um neue Funktionen hinzuzufügen und zu verbessern, die für Kunden bereitgestellt werden? ist Equinox schnell genug, um ein Server mit hoher Auslastung zu sein? – Imaskar

Antwort

1

Normalerweise ist das Installieren und Starten neuer Bundles ohne Neustart der Plattform eine großartige Möglichkeit, die neuen Möglichkeiten von OSGi zu präsentieren.

Aber meiner Meinung nach sollten Sie es nicht so in Produktionsumgebungen verwenden, weil es nicht einfach ist, Ihre Anwendung so zu entwickeln, dass dieser Prozess zuverlässig ist.

Natürlich ist es in der Regel kein Problem, einer laufenden OSGi-Anwendung ohne Neustart neue Funktionen über neue Bundles hinzuzufügen. Aber es ist eine ganz andere Situation, wenn Sie wirklich einen "immer-up-Server" brauchen, wegen der Abhängigkeiten, die Ihre Bundles untereinander haben, was es dynamisch macht, geladene Bundles dynamisch zu ändern. Es ist nicht unmöglich, aber ich würde nicht darauf zählen.

Also ja, es ist einfacher und in Ordnung, neu zu starten, wenn Sie Änderungen an Ihrer Anwendung bereitstellen.

+0

a haben jetzt eine Menge Zweifel. Andere Vorteile von osgi sind einfach etwas einfacher zu machen, aber nichts zu bringen, was man vorher nicht gesehen hat – Imaskar

1

Sicher. Mit der OSGi-Konsole können Sie (ohne etwas neu zu starten) neue Bundles mit dem Befehl "install file: ..." installieren und mit "start" starten.