php - 如何构建可用的 Web 应用程序

标签 php high-availability failover

假设我们要构建一个以高可用性为首要关注点的 Web 应用程序。我们的客户是公司,因此停机时间对所有相关人员来说都等于收入损失。

总而言之,我们需要始终在线,让每个人都开心。那么,从非常基本的角度来看,我们应该使用哪些技术来做到这一点?

除了我们将使用 PHP 来保持高速开发之外,我们几乎没有任何偏好,因此我们对新的数据存储平台以及实现这一目标的其他平台完全开放。

非常感谢您的回答!非常感谢!

最佳答案

为此,您需要同时考虑硬件和软件。

关于硬件,您最好的选择可能是选择具有必要经验的托管服务提供商,例如 Rackspace(我在他们身上取得了很好的个人经验,但还有很多其他人)。这不会便宜。你将需要完全冗余的硬件来承受任何一个组件的故障——多台服务器(至少两台),每台服务器都有多个磁盘、网卡、风扇、电源——你明白了。

关于软件 - 确保在构建软件时考虑到可扩展性。如果它是您的普通 Web 应用程序,使用 MVC 范例并保持分离清晰将大大有助于确保您可以跨需要运行的多个服务器扩展您的应用程序。

最难的部分通常是数据库,因为你不能只运行两个。因此,请研究具有自动故障转移功能的主从设置,甚至集群。

有许多关于此主题的书籍,here's just one of them .祝你好运!

关于php - 如何构建可用的 Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3485158/

相关文章:

postgresql - 如何让 pcp 自动将节点附加到 postgres pgpool?

java - 阻止与 IP 的传出连接以进行失败测试?

php - Laravel:与数组的额外字段同步

php - 来自数据库的 Moodle 报告

php - 在 php 或 javascript 上自动打印 PDF 脚本

Wildfly 9 - 如何将 jvm 参数添加到各个服务器

php - 移动检测高流量站点

php - mysqli使用mysql变量错误

asp.net-mvc - 如何计算应用程序可用性 (SLA)

postgresql - 使用 PPGool-ii 在 Amazon EC2 上部署高可用性 Postresql 9.0