有关应用程序可伸缩性的最佳现代指南是什么?

时间:2013-02-14 00:38:26

标签: web-services web-applications scalability web-hosting

我听到很多关于应用程序如何扩展的信息,但是有太多相互矛盾的信息。一方面,每个Web主机声称通过在负载增加时添加更多服务器来实现扩展,这看起来非常简单。但随后出现了其他服务,声称可以在已经自动扩展的网络主机(例如heroku上的heroscale)上为您扩展应用程序。如果需要这些服务,那么Web主机本身不可能100%可扩展。你仍然会听到有关应用程序在一夜之间爆炸并最终崩溃或几乎崩溃并破坏所有流量的消息,因为它们的扩展性不够好。显然,这些大时代应用程序的开发人员已经听说过流行的“可扩展”Web主机,如heroku,所以如果使用它们就是他们需要做的全部,那么就不会有问题。但仍有一个。

是否有任何摘要,指南等。在那里解释为什么所有这些都会发生,当前的解决方案,以及你将如何实现这些解决方案的可扩展性?我应该从哪里开始寻找?

1 个答案:

答案 0 :(得分:2)

应用必须能够利用它获得的额外服务器/资源。这听起来比现在容易。常见的问题是例如数据库。假设您有一台带有数据库的服务器,并且在某个时间点您看到太多负载/太多连接。现在您要启动第二个数据库服务器,但您的应用程序不支持多个数据库服务器,因此扩展将失败。

以下是wooga(社交游戏开发者)关于该主题的演示: http://www.slideshare.net/wooga/20121130scalable-game-servers