原文地址:http://highscalability.com/7-stages-scaling-web-apps
标题:The 7 Stages of Scaling Web Apps
翻译:大型web程序架构阶段
*
Stage 1 - The Beginning: Simple architecture, low complexity. no
redundancy. Firewall, load balancer, a pair of web servers, database
server, and internal storage.
第一个阶段:开始,架构简单,低复杂度,防火墙,负载均衡,一些web服务器,数据
库服务器,内部存储服务器。
* Stage 2 - More of the same, just bigger.
第二个阶段:更多的上面的系统设置。
* Stage 3 - The Pain Begins: publicity hits. Use reverse proxy, cache static content, load balancers, more databases, re-coding.
第三个阶段:痛苦开始,使用反向代理,缓存
静态内容,负载均衡,更多数据
库,代码重构。
* Stage 4 - The Pain Intensifies: caching with memcached
,
writes overload and replication takes too long, start database
partitioning, shared storage makes sense for content, significant
re-architecting for DB.
第四个阶段:痛苦继续,使用memcached
缓存
数据
库,数据
写以及发布占用时间长,开始数据
库分区,重新架构数据
库。
*
Stage 5 - This Really Hurts!: rethink entire application, partition on
geography user ID, etc, create user clusters, using hashing scheme for
locating which user belongs to which cluster.
第五个阶段:要害处。重新思考整个项目,按照全局用户ID分区,创建用户集群,使用Hash确定用户属于哪个Cluster.
*
Stage 6 - Getting a little less painful: scalable application and
database architecture, acceptable performance, starting to add ne
features again, optimizing some code, still growing but manageable.
第六个阶段:痛苦略微。大型应用程序以及数据
库架构,可接受的性能,开始添加新的特性,优化代码。
*
Stage 7 - Entering the unknown: where are the remaining bottlenecks
(power, space, bandwidth, CDN, firewall, load balancer, storage,
people, process, database), all eggs in one basked (single datacenter,
single instance of data).
第七个阶段:进入未知状态。哪里是瓶颈?(电力,空间,带宽,CDN,防火墙,负载均衡,存储,员工,处理,数据
库)。(简单数据
中心)。
===============================================================
===============================================================
<!-- google_ad_section_start -->
By John Engales CTO, Rackspace. Good presentation of the stages a typical successful website goes through:
* Stage 1 - The Beginning: Simple architecture, low complexity. no
redundancy. Firewall, load balancer, a pair of web servers, database
server, and internal storage.
* Stage 2 - More of the same, just bigger.
* Stage 3 - The Pain Begins: publicity hits. Use reverse proxy, cache static content, load balancers, more databases, re-coding.
* Stage 4 - The Pain Intensifies: caching with memcached, writes
overload and replication takes too long, start database partitioning,
shared storage makes sense for content, significant re-architecting for
DB.
* Stage 5 - This Really Hurts!: rethink entire application, partition
on geography user ID, etc, create user clusters, using hashing scheme
for locating which user belongs to which cluster.
* Stage 6 - Getting a little less painful: scalable application and
database architecture, acceptable performance, starting to add ne
features again, optimizing some code, still growing but manageable.
* Stage 7 - Entering the unknown: where are the remaining bottlenecks (power, space, bandwidth, CDN
,
firewall, load balancer, storage, people, process, database), all eggs
in one basked (single datacenter, single instance of data).
分享到:
相关推荐
Kinetics analysis of Ni-TiO2 composite system during the initial stages of electrocrystallization,胡炜,谭澄宇,The initial stage of Ni-TiO2 composite system electrodeposition on the ...
本章“Chapter 14 The Tessellation Stages”深入探讨了如何利用这些阶段来创建更精细、更真实的三维模型。以下是对这个主题的详细讲解: 1. **Tessellation的基本概念**:Tessellation是一种将低多边形几何体转换...
滑模控制的设计与分析过程可以被划分为几个阶段,每个阶段都有其独特的理论基础和应用方法。以下是根据提供的文件内容,对滑模控制器五个阶段的详细介绍: 第一阶段:一阶滑模控制(First Order Sliding Modes) ...
- **Master/Worker 架构**:Spark 采用 Master/Worker 架构,Spark Web UI 主要展示了 Master 节点的信息及各个 Worker 节点的状态。 - **实时监控**:Spark Web UI 支持实时监控,可以动态展示应用程序的运行状态...
ability of deep CNN is largely achieved with the use of multiple feature extraction stages that can automatically learn hierarchical representations from the data. Availability of a large amount of ...
The publication of Principles of Lithography, Third Edition just five years after the previous edition is evidence of the quickly changing and exciting nature of lithography as applied to the ...
研究语义web的资料The goal of the SAIBA effort is to create a representational framework for real-time multimodal behavior generation in embodied conversational agents. Its members have proposed ...
Kelly was then, and continues to be, on the Thunder Lizard roster at several conferences each year, where she lectures extensively on the topic of web design workflow in its many stages. As the ...
- **Developing Mobile Web Applications**: Overviewed as a process of designing and developing web apps that work seamlessly across different devices and platforms. - **Write once, read many**: ...
An example of a port is the port for the web-browser Mozilla. It contains information about where to fetch the source, what patches to apply and how, and how the package should be installed on the ...
There is a variety of different approaches to simplify multi-core programming, but most of them are only solving parts of the problem, leaving the rest as (unrealistic) assumptions. This thesis ...
He outlines the six predictable stages of start-up growth and details the activities that should be undertaken at each stage to ensure success and to avoid common pitfalls. Instead of feeling lost ...
This paper presents preliminary development of the LFR which use a normal laptop with a web cam to guide itself through a track. The designed LFR is insensitive to environmental factors such as ...