【发布时间】:2019-09-30 17:05:17
【问题描述】:
我正计划为我的一个项目构建一个 API。但我正在寻找一种管理它和管理服务器负载的好方法。
在一台服务器上创建所有内容会更好,还是应该创建多个?
想法:
如果我创建了一台服务器并且该服务器崩溃了,整个系统就会崩溃。但是,如果我创建了多个服务器来处理这个问题,其中一个崩溃了,那么只有那一部分会宕机。
我是如何考虑做到这一点的:
1) 创建一个 API ENDPOINT
2) 当用户向 API ENDPOINT 发送 REQUEST 时,ENDPOINT 会向包含特殊任务的正确服务器发送另一个请求,当任务完成后,它将数据返回给用户。
又名:
用户 => 端点 => 端点 1,端点 2,端点 3,=> 端点 => 用户
我应该这样做吗?
附:我不知道这是否是正确的术语,但我正在尝试学习如何扩展我的 ENDPOINTS/API/代码。
【问题讨论】:
-
更好地了解微服务,它提供了多服务器工作的灵活性。 microservices.io
-
旨在简化应用程序/api 的部署,以便您可以轻松地将其部署在 docker、lxd 映像、git 部署、now.sh 等任何东西上,然后您只需要前面的反向代理即可nginx 可以将所有请求代理到上游服务器,如果一个出现故障,它将进行故障转移,但如果您使用 mysql 等,您还需要考虑抽象 db,这也需要部署/备份和负载平衡策略。
标签: node.js api express server endpoint