Ich entwickle eine Service-Fabric-basierte Handelsplattform, die hunderte von verschiedenen Long-Running-Trading-Algorithmen hosten wird, die alle einer gemeinsamen Schnittstelle entsprechen und viel gemeinsamen Code teilen aber kann in ihren internen Spezifika sehr unterschiedlich sein. Ich könnte jedes der verschiedenen Algos als Anwendungstyp (die ich dynamisch laden würde) modellieren, aber angesichts der großen Anzahl von verschiedenen Algos frage ich mich, ob es sinnvoller ist, einen einzelnen Plugin Runner-Anwendungstyp zu erstellen und dann die Algos als zu implementieren Plugins.Service Fabric: Plugins vs. Anwendungstypen
In einer verwandten Frage, ich verstehe, wie eine Plugin-Architektur im Allgemeinen implementieren, aber ich bin nicht ganz sicher, wo man die tatsächlichen Plugins platzieren würde, um von einer Instanz auf Service Fabric erkennbar sein.
Trotzdem, vielen Dank für Ihre Hilfe ....
Danke für die schnelle und hilfreiche Antwort. Gibt es eine Idee, wo/wie die Plugins platziert werden, damit sie zur Laufzeit vom Azure Service Fabric gefunden werden können? Ich denke an die DevOps der Sache ... –
Vielleicht so etwas: Wenn du algo "A v1" anforderst, suche nach einer Assembly mit diesem Namen: "A" und Version "1". Laden Sie die Assembly aus einem Repository herunter (wie in 2. oben), legen Sie sie in Ihr Arbeitsverzeichnis und laden Sie sie mit Assembly.Load ("A, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089"); Verwenden Sie Reflektion, um es zu finden und zu instantiieren. – LoekD
Ich habe den Plugin-Stil versucht und es hat super funktioniert. Das ist der Weg, den ich gehen werde ... –