SOA: Warum werden Erlang / OTP-Webserver nicht als Dienste verwendet?
Nach dem Lesen derServiceorientierte Architekturprinzipien Website und der jeweiligen WikipediaArtikel Ich hatte einen Gedanken: Die Erlang / OTP-Plattform kann als SOA-Plattform betrachtet werden und SOA-Anwendungen können darauf aufgebaut werden.
Das einzige ist, dass dieServicevertrag Für jeden Dienst in einem solchen System ist sehr spezifisch: Um einen Dienst in Erlang / OTP aufzurufen, müsste die Orchestrierungsschicht Anrufe über Erlang-Nachrichten oder Anrufe an gen_server tätigen (abhängig von der Implementierung).
Auf diese Weise können keine Anrufe an Dienste außerhalb des Erlang / OTP-Plattformbereichs getätigt werden.
Aber was ist, wenn wir versuchen, jeden Dienst zu erstellen, indem wir die gesamte Dienstfunktionalität in einen Erlang-basierten Webserver wie Mochiweb verschieben und die Schnittstelle jedes Dienstes im Wesentlichen von gen_server: call to XML ändern?
Dies ermöglicht die Zusammenstellung verschiedener Anwendungen aus standardisierten "Bausteinen" mit Universaldienstverträgen auf der Grundlage vonWSDL.
Darüber hinaus können wir mit diesem Ansatz weiterhin OTP-Supervisoren und andere OTP-Funktionen verwenden, da ein solcher Dienst weiterhin eine OTP-Anwendung ist.
Die Frage lautet also: Halten Sie es für eine gute Idee, eine Softwareanwendung mit dem Service Oriented Architecture-Ansatz unter Verwendung von OTP-Webservern (Mochiweb) als Services zu erstellen? Kann die zusätzliche XML-Verarbeitungsschicht alle Vorteile eines solchen Ansatzes zerstören?