这是一个有趣的话题。当您想到服务器时,您往往会想到一台运行单个程序的机器。集群是指多台机器运行多个程序,它们协同工作,看起来像一台机器/程序。
为什么要集群?两个同等重要的原因:可扩展性和可靠性。
可扩展性是指允许某事物同时处理更多连接/事务的想法。一个典型的 Web 服务器可以处理大约每秒 1000 个连接,但 10 个 Web 服务器协同工作可以提供每秒 10,000 个连接。
可靠性是指即使系统的某个部分出现故障,系统也不会崩溃的想法。没有单点故障,并且内置了冗余以确保在某个部分出现故障时,有其他部分可以顶替上来。在 Web 服务器示例中,如果一台 Web 服务器出现故障,您将无法向其发送任何连接,直到它恢复正常,从而确保您的网站始终处于运行状态。
这两个想法对于成功的集群策略至关重要。每一个想法都希望将设计推向不同的方向,但它们可以协调到一个单一的设计中,使其既可扩展又可靠。