【发布时间】:2010-09-26 14:59:16
【问题描述】:
嗨 考虑一个消耗大量进程的 PHP 应用程序,该应用程序大量处理复杂的数据库事务,除了具有相当高的内存消耗算法之外别无选择。每个请求最多使用 4MB 内存。 (某些请求平均为 1 MB,常规请求的可变数据少于 200KB) 很明显,我们将使用 Amazon S3 之类的东西来托管我们的静态数据,但很明显大部分负载都在动态部分上。
该应用程序将在多个服务器上运行,但它是如何工作的?我们是否让它像运行在单个服务器上的普通应用程序一样,而额外的服务器只会让它像一个拥有大量内存和处理能力的大型服务器一样工作?
我们的问题是,尽管应用程序是以极其模块化的方式编写的,但该过程迫使我们将所有东西都放在同一个环境中。我们可以将数据库放在针对服务进行优化的机器上,但几乎没有办法将应用程序代码本身的不同模块放在不同的服务器上。
那么,常见的解决方案是什么?
【问题讨论】:
标签: php performance design-patterns scalability