2016-07-29 20 views
1

Sorry, wenn dies eine grundlegende Frage ist, ich Einwickeln noch meinen Kopf um NodeJS Implementierungen. Ich habe eine App geschrieben auf nodejs, die ich in der Produktion bereitstellen möchte. Bisher habe ich zu Testzwecken Express benutzt. Aber von dem, was ich weiß, ist Express ein Entwicklungsserver und kein Produktionsserver. Wie stelle ich die nodejs-App für die Produktion bereit und welchen Server soll ich verwenden? Außerdem habe ich viel Code für Express wie Routen und Middleware geschrieben, wie funktioniert das, wenn ich auf einem anderen Server bin?NodeJS Express App Produktion Bereitstellung

+0

Geben Sie weitere Details wie Art des Servers Sie bereitstellen werden? Ist es Cloud-basiert? Oder diese Für Azure Cloud für verschiedene Einsätze Check out: https://azure.microsoft.com/en-in/documentation/articles/cloud-services-nodejs-develop-deploy-app/ Für IIS von Windows http://www.hanselman.com/blog/InstallingAndRunningNodejsApplicationsWithinIISOnWindowsAreYouMad.aspx Für Linux: https://www.digitalcocean.com/community/tutorials/how-to-set-up-a-node-js-application -for-production-on-ubuntu-14-04 – Thennarasan

+0

seine Cloud basierend auf Azure (Web-Rolle). Mein Hauptanliegen ist, bedeutet dies, dass ich den Expresscode, den ich geschrieben habe, aufgeben muss und etwas anderes ausprobieren muss? – user3547774

+0

Nicht erforderlich .. Wenn es azurblau ist, ist es wirklich sehr einfach zu implementieren. Öffnen Sie vor dem Veröffentlichen die Befehlszeile von node.js -> gehen Sie in Ihren Projektordner und geben Sie 'flatten-package' ein. Wenn Sie nicht haben, installieren Sie es und dann führen Sie es aus. Da die npm-Module verschachtelte Module haben werden, ist dies das einzige Problem, das bei einem Webdeploy auftreten wird. Greifen Sie auf Ihre azure Webanwendung zu und laden Sie das Veröffentlichungsprofil herunter. und im Projekt - RightClick -> Veröffentlichen wählen Sie Azure und importieren Sie die Veröffentlichungseinstellung. Und Sie sind jetzt bereit zu veröffentlichen und es wird funktionieren. Probieren Sie es aus und senden Sie es, wenn Sie Probleme haben. – Thennarasan

Antwort

0

Wenn Sie Ihre Anwendung mit Express.js erstellen, alle Expressmodule wurden in package.json angegeben und werden als NPM-Module installiert werden.

Alles, was Sie tun müssen, ist nur node.js auf Ihren Produktionsservern installieren, setzen Sie Ihren Code dort, führen Sie npm install, dann starten Sie den Webserver mit NODE_ENV=production param. Es wäre ein Vorteil, wenn Sie grunt oder Schluck verwenden könnten, um statische Assets zu verarbeiten (js/css minification, ...), um die Performance für den Produktionsmodus zu optimieren.

Für weitere Informationen können Sie hier einen Blick: https://expressjs.com/en/advanced/best-practice-performance.html