gpt4 book ai didi

node.js - 我需要对在 Google 应用引擎上运行的 Node.js 应用程序进行任何设置吗?

转载 作者:太空宇宙 更新时间:2023-11-03 22:52:25 25 4
gpt4 key购买 nike

事情是这样的,我想使用 Google App Engine,因为它易于使用并且可扩展性很重要,由于 Google 基础设施的可扩展性,我决定尝试一下 Amazon Web Service,这将需要相当长的时间才能完成学习和部署。但我对在 Google App Engine 上使用 Node.js 没有什么疑问。例如

1) 我是否需要在每个 Node.js 服务器上手动进行集群,还是 App 引擎会自行完成? (提高各服务器性能)

const cluster = require('cluster');
const http = require('http');
const numCPUs = require('os').cpus().length;

if (cluster.isMaster) {
// Fork workers.
for (var i = 0; i < numCPUs; i++) {
cluster.fork();
}

cluster.on('exit', (worker, code, signal) => {
console.log(`worker ${worker.process.pid} died`);
});
} else {
// Workers can share any TCP connection
// In this case it is an HTTP server
http.createServer((req, res) => {
res.writeHead(200);
res.end('hello world\n');
}).listen(8000);
}

2)我需要关心多个node.js服务器上的负载平衡吗?

3)我是否需要反向代理网络服务器,以便它可以更快地提供静态文件? (众所周知,node.js 对静态文件的服务很差)

4) 如何在 App Engine 上运行 Redis?

5) 我需要使用 Channel API 或 Socket API 来使我的 Node.js 应用程序实现实时吗? (这个应用程序有一个简单的实时更新、推送通知、用户之间的聊天)

6) 从长远来看,App Engine 还是 EC2 更便宜?

我知道我问了很多问题,但这些是我自己努力澄清的问题。希望有更好经验的人可以向我解释一下。

问候, jack ·莫斯科维

最佳答案

首先,这不是正确的提问方式。请浏览常见问题解答,我回答这个问题仍然是为了帮助您。但从下次开始,请先用谷歌搜索您的疑问。

我需要在每个 Node.js 服务器上手动进行集群还是 App 引擎会自行完成? (提高各服务器性能)

Google 的 App Engine 分发 channel 独立运行,因此与您的手动集群等无关。

我需要关心多个 Node.js 服务器上的负载平衡吗?

实例的添加和删除是自动完成的,并且在它们之上有一层负载平衡机制,因此您无需担心。

我是否需要反向代理网络服务器,以便它可以更快地提供静态文件? (众所周知,node.js 对静态文件的服务很差)

选择是你的,对于一般的静态内容,我个人只依赖文件系统,没有任何显式的反向代理方法,因为嘿,最终谷歌的应用程序引擎做了相当多的事情。使用这两种机制运行测试,并根据结果选择您需要执行的操作。

对于动态加载图像,我建议您使用单独的容器等。

如何在 App Engine 上运行 Redis?

你不知道,应用程序引擎是用于编程环境的,为什么你想将它用于存储目的。使用计算引擎并安装 redis,或者您可以直接部署 bitnami 或 google 的基础设施。

我需要使用 Channel API 或 Socket API 来使我的 Node.js 应用程序实现实时吗? (这个应用程序有一个简单的实时更新、推送通知、用户之间的聊天)

这与您的云架构无关。您需要执行应用程序级别所需的操作。话说回来,Socket.io 相当有名。

从长远来看,App Engine 还是 EC2 更便宜?

两者的价格分布都给出了,只需比较它们即可。

关于node.js - 我需要对在 Google 应用引擎上运行的 Node.js 应用程序进行任何设置吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38297114/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com