我们正在准备扩展API密集型Web应用程序的API端。我(精通技术的)客户提出了一种非常规的方法:不是将负载平衡到几个应用服务器,而是与分片数据库通信,他希望我们:
潜在的推理是,这是最自然的事情,并且这将允许我们将来转移到多站点分布式系统。
(堆栈是MySQL上的PHP + Node.js,虽然此时也考虑过转换到MongoDB。)
现在,我没有看到现成的巨大问题。编写这些服务器到服务器的交互可能有点麻烦,但它肯定会有自己的好处。基本上我不知道这是不是一个好主意。
你有什么利弊?我在这里寻找技术问题和优势。谢谢!
答案 0 :(得分:2)
由于很多原因,这很简单。
我讨厌以这种方式论证我的观点,但很多非常聪明的人以前都处理过这些问题,而且我从来没有听说过这种类型的架构。这可能是有原因的。更不用说有很多技术和资源可以帮助您处理应用程序和数据库服务器的传统分片和负载平衡。如果你使用客户建议的架构,那就是你自己的。