Node.js 集群模块与微服务

Node.js Cluster module vs Microservices

它们都解决了同一个问题——可伸缩性。什么时候使用哪个?

在 docker 容器中为节点应用程序 运行 集成集群 API 是否有意义?

它们并不完全等同。微服务解决了组织和代码管理问题,以一种非常动态的方式进行可扩展性,减少了紧耦合,并将错误隔离到一个微服务)。 cluster 通过在同一台机器上分拆集群工作程序,以非常有限的方式解决了可伸缩性问题。如果您有一个大型应用程序并且通常垂直扩展(通过增加主机的计算能力),cluster 非常好。如果没有,将事物分解为 int 服务(或进一步分解为微服务)也很好。

你也可以两者都做(你的第二个问题),例如 运行在 Kubernetes 上的容器中使用 Node 应用程序,其中 Node 应用程序使用 cluster。根据您的容器如何获得 运行 以及它们分配的 vCPU 数量,它可能会或可能不会有任何影响,但它只是几行代码,所以添加它不会有什么坏处。