nodejsは、Windowsサービスとして実行するノードコマンドを開始します(node-windowsで使用されます)

序文

Windowsがノードコマンドを実行するとき、jsは継続的なトランザクションを実行する必要がある場合があります。cmdで開始するときは、ウィンドウが閉じられないようにする必要があります。これは絶対に確実な解決策ではありません。現時点では、ノードコマンドの開始を試みることができます。 Windowsサービスとして実行します。

依存関係パッケージ

node-windowsの依存関係をプロジェクトのルートディレクトリにインポートします。

npm i node-windows

インストールサービス

ここにファイルがありdatabase.jsデータベースにデータを書き込み続け、cmdで開始する必要がある場合はnode database実行を続け、機能させるためにファイルを閉じることができないとします。

現在は1つしか記述しておらずservice.js、Windowsサービスとして実行するためにインストールできます。

//service.js

import path from "path";
import nodeWindow from "node-windows";
const Service = nodeWindow.Service;

let svc = new Service({
    
    
  name: "node_database", //名称
  description: "添加数据进入数据库", //描述
  script: path.resolve("./database.js"), //node执行入口文件
  nodeOptions: ["--harmony", "--max_old_space_size=4096"],
});

svc.on("install", function () {
    
    
  svc.start();
  if(svc.exists){
    
    
    console.log('服务安装成功')
  }
});

svc.install();

次に、ファイルを実行してノードで1回実行し、インストールを実行して終了します。

node service.js
服务安装成功

ここに画像の説明を挿入

アンインストールサービス

//uninstall.js

import path from 'path'
import nodeWindow from 'node-windows'
const Service = nodeWindow.Service

let svc = new Service({
    
    
    name: 'node_database', //名称
    script: path.resolve('./index.js'), //node执行入口文件
    nodeOptions: [
        '--harmony',
        '--max_old_space_size=4096'
    ]
});

svc.on('uninstall', function () {
    
    
    if (!svc.exists) {
    
    
        console.log('服务卸载完成');
    }
});

svc.uninstall();

サービスをアンインストールするために同じことを開始できます

node uninstall.js
服务安装成功

関連するコンテンツを変更するときは、インストールサービスをアンインストールすることを忘れないでください。

終わりの言葉

記事が悪くないと思ったら、気に入って集めてください。間違いや提案があれば、メッセージを残してください、ありがとうございます〜

おすすめ

転載: blog.csdn.net/weixin_43877799/article/details/123351572