2015-04-21 146 views
6

我已經開發了使用節點js的推送通知服務。爲此,我必須每次都手動啓動服務。如何自動啓動節點服務?

enter image description here

如何自動啓動該服務?例如:如果我登錄,它應該自動運行。在此先感謝

+6

這不是一個JavaScript問題,而是Windows的程序調度問題。 – doldt

+2

同意。好問題,但可能屬於不同的堆棧交換站點,如超級用戶。 – redbmk

+1

自託管應用程序不是很可靠。一個使用heroku或類似的更好。 :) –

回答

0

有幾種方法可以做到這一點,

。加利福尼亞擴展創建一個文件,只需添加你寫的東西在CMD命令來啓動該服務作爲該文件的內容。

node Path:\service.js 'Assumes path to node.exe is set 

右擊,並創建該文件的快捷方式和快捷方式拖到啓動文件夾。

開始>>所有程序>>右鍵單擊啓動>>打開

Task Scheduler也可以使用。

現在還有一些NPM模塊可以管理節點進程。 看看foreverPM2

+0

謝謝阿卜杜拉,我是node.js的新手。有沒有其他選擇來啓動服務而不是* .cmd。如果我將節點服務移動到雲服務器(亞馬遜)。如何開始這項服務? – Nisar

0

,我想這forever是你需要妖魔化計算機上的應用程序。

我使用它,它是Nodejs在Windows啓動時啓動程序的事實上的方式,無需打開Windows會話或將任何內容放入啓動或使用任務調度程序。

4

如果您需要Windows啓動時啓動的Windows服務,則可以使用sc create命令創建該服務。

例如

sc create MyServiceName binpath= "C:\Program Files\nodejs\node.exe C:\somefolder\service.js" start= auto depend= "Tcpip/Afd" DisplayName= "A friendly name for my service" 

注意=號後面的空格。

您可以在這裏找到更多的信息:https://technet.microsoft.com/en-us/library/cc990289.aspx

如果您需要應用程序啓動時,您登錄相反,你可以使用Regedit.exe創建在下面的註冊表路徑包含您的命令REG_SZ項:

HKEY_CURRENT_USER \軟件\微軟\的Windows \ CurrentVersion \ Run中