Web应用设计的本质目的是为了解决软件系统的复杂性,所以我们在进行web设计时,首先要分析系统的复杂性,然后再进行设计。
1.案例
某公司在创业初期快速地开发了一个B2C的垂直电商网站,然后就迅速的投向市场进行运营。为了能够快速上线,系统设计得非常简单,选择了三层架构(如图1设计方案)。经过一年的业务扩展,由于业务量发展迅速,导致系统访问量不断增大,现有系统访问进度缓慢,有时甚至出现系统故障瘫痪的现象,影响了业务的进一步发展。
面对这一情况,为了能支撑接下来一年内的业务发展,公司召开了项目组讨论会议,寻求该商务平台的解决方案。讨论会上,李工提出通过增加Web服务器群的方案进行横向扩展,如(图2李工方案)所示。
王工提出将商务平台系统按照各个子系统进行垂直拆分结合集群的方案,如图3所示。
2.分析
为了选择最终方案,从性能和可用