我正在使用运行Windows Server 2019的Google Cloud Platform中的VM。我目前有一个简单的TCP服务器(node.js),它可以接收数据,然后使用Axios将其发布到我的firestore数据库中。对我而言,重要的是服务器不会崩溃,并且在发生崩溃的情况下,它可以重新启动并“保持活动”。我该怎么做?
VM和TCP服务器的新功能。刚刚做了一个简单的
TCP
const net = require('net');
const axios = require('axios')
const chalk = require('chalk');
const server = net.createServer(conn => {
console.log(chalk.green('new client'));
conn.on('data', data => {
// let add = conn.address()
console.log(data)
if(data.length > 0){
axios.post('https://abc', {
data: data
})
.then(response => {
conn.write('ACK');
}).catch(err =>{
conn.write('ERR', err)
console.log(err)
})
}
});
conn.on('end', () => {
console.log(chalk.red('client left '));
console.log(chalk.white.bold('----------------------------------'));
});
});
server.listen(8080);
答案 0 :(得分:1)
在Windows Server上运行node.js应用程序面临一些挑战。
node-windows
:https://www.npmjs.com/package/node-windows
这只是示例,并非对任何特定产品的推荐。
必须安装监视应用程序并将其设置为Windows服务,以便监视应用程序自动重新启动。应用程序node-windows
也提供了此功能。
在用户环境之外安装应用程序文件。这意味着创建具有正确所有权和权限的目录,以便Windows服务可以访问文件。
Charan Tej撰写的这篇文章可能有助于了解细节: