NPM SOAP-Paket - Client als Singleton?

9

Ich benutze dieses npm-Paket: Ссылка

Ich konnte keine Antwort in der Dokumentation finden, da ich mich frage, ob die beste Vorgehensweise für den SOAP-Client darin besteht, einen einzelnen Client als Start zu erstellen und für alle Anfragen zu verwenden (ähnlich wie beim Datenbank-Client) oder einen neuen zu erstellen pro Anfrage.

    
David Faiz 24.10.2017, 14:52
quelle

1 Antwort

0

Das hängt von Ihren Anwendungsfällen und Anwendungsanforderungen ab.

Nach dem Lesen des Codes von node-soap passiert Folgendes, wenn createClient() aufgerufen wird:

  • createClient(url, options, cb) erstellt intern einen wsdl-Handler für die betreffende URL ( wsdl.open_wsdl() )
  • Der wsdl-Handler wird mit dem Schlüssel url as zwischengespeichert (es sei denn options.disableCache ist true )
  • createClient() ruft zurück mit Client() , wodurch der wsdl-Handler
  • umbrochen wird

Wenn sich Ihr url also nicht ändert, sollte es in Ordnung sein, es als Singleton zu verwenden, da Sie den Setup-Code für wsdl nicht noch einmal ausführen müssen.

Wenn sich Ihr url ändert (oder wenn Sie nicht sicher sind, ob sich das ändert), verwenden Sie createClient() für jeden Aufruf. Das wsdl-Setup wird weiterhin zwischengespeichert, sodass in diesem Fall kein Overhead für Sie entsteht (außer beim ersten Mal, wenn das WSDL erstellt wird).

    
ralphtheninja 17.03.2018 13:28
quelle

Tags und Links