【问题标题】:What is the proper way to set up Node.js and MySQL? [closed]设置 Node.js 和 MySQL 的正确方法是什么? [关闭]
【发布时间】:2018-10-29 01:29:32
【问题描述】:

我目前有一个处理多个 API 调用的 Node 服务器。该服务器由运行在前端服务器上的 React 应用程序调用。截至目前,我没有数据库,但我正在将 MySQL 集成到这个项目中。我已经看到有对 MySQL 的 Node 支持,所以我想知道哪种是设置它的正确方法。 我应该为数据库运行另一台服务器还是我的 API 服务器也能够处理 MySQL?

【问题讨论】:

  • 这取决于您的代码运行的服务器的参数。例如:我有来自 OVH 或 Hetzner 的 8 核和 32gb 内存的服务器。当我的应用程序查询数据库时,我只是将应用程序和数据库都保存在同一台服务器上以避免网络 i/o。但我知道,当我的业务增长时,我必须将数据库和应用程序分离到不同的服务器,以实现负载平衡、水平可扩展性等原因。顺便说一句,您可以使用 2 台小型服务器(每台 1 个 cpu)并将应用程序放在一个服务器上,将 db 放在另一个服务器上,以便从一开始就考虑到可扩展性。 (: p.s. DigitalOcean 提供优惠券代码: DROPLET10 - 10$ ex

标签: mysql node.js


【解决方案1】:

在这个链接找到这个答案:

https://www.quora.com/Should-a-REST-API-for-a-database-be-hosted-on-the-same-or-a-separate-server

基本上:

这取决于您正在使用的系统的架构或 正在尝试构建。

如果设置是访问单个数据库实例的 REST API (非分布式、非复制设置),两者都托管在 同一台服务器应该没问题。如果 REST API 的唯一目的是 针对这个单一数据库的抽象查询和操作, 同服务器方法是合理的。也建议使用这种方法 前提是你的 API 没有被大量的 消费者。

另一方面,如果您正在处理分布式数据库 设置(或复制),那么就会有负载的概念 平衡以处理可扩展性/响应性。在这个设置中,它 将您的 REST API 托管在单独的 具有适当故障转移机制的服务器(例如跨“n”的负载平衡 专用于托管 API 的服务器)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-15
    • 1970-01-01
    • 1970-01-01
    • 2015-03-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-22
    • 2017-12-17
    相关资源
    最近更新 更多