之前有对性能需求进行过分析,那篇主要从项目业务、背景等角度如何抽丝剥茧的将项目的需求抽离出来。在我们进行需求的时候也需要对被测项目的架构有一定的认识,如果不了解被测系统的架构,那么在后期的性能分析与调优阶段将无从下手。

  简单系统架构介绍

  因为每个公司的业务不同,采用的技术,架构也都有很大不同。但不管怎么变动,但基本都在三层架构的基础上扩展与改进。

  下面看一个基本的系统架构:

  表示层:

  表示层运行在客户终端上,运行java  applet 程序,提供协议控制和用户界面,与系统用户实现直接交互,通过TCP/HTTP协议与业务层系统通信,向应用层系统发送请求报文,并接收应用层系统返回的回应报文。

  业务逻辑层:

  业务逻辑层作为中间层实现核心业务逻辑服务。

  应用服务器主要运行中间件系统,中间件系统系统作为一个容器来运行各种应用软件系统。前台发来的请求报文通过中间件传递给应用程序,应用程序在处理的过程中调用数据层的数据服务器,数据服务器将查询的数据返回给应用程序,应用软件处理完成后通过中间件系统返回给客户端。

  在大型的系统中,可以对应用系统进行拆分,比如拆分成交易服务,查询服务;或者通过负载均衡技术,来分散客户端发来的请求,使其能承受更大的用户访问量。

  数据层:

  数据层运行在数据库主机上,负责整个系统中数据信息的存储。运行数据库服务程序,查询通过JDBC与应用程序进行通信,主要用于存储数据与提供数据查询等服务。

  数据库集群技术是对大型系统应用非常广泛的一种解决方案。

  大型系统架构介绍

  前面介绍了一般系统的架构,那么一个大型的系统在设计中使用了哪些手段或技术来提高系统的性能呢

  操作系统

  操作系统是硬件与软件之间的桥梁,那么一个稳定的操作系统是系统坚实的基础。在个人操作系统领域,windows 无疑是的霸主,但随着近几年的发展,linux/unix以其不俗的性能表现,超强的稳定性与安全性使其在服务器领域变成重多企业的。因为系统服务器由少数技术人员使用,他们更看重系统的性能、稳定性和安全性等方面的表现。

  Web服务器

  Web服务器即中间件服务器,是应用程序的载体(容器),应用程序只有在中间件服务器上才能正常的运行被外界所访问使用。对于window系统来说,IIS是微软配套的web服务器,他们的搭配应该是夫妻是之间的默契;apache 作为开源力量代表,不管在windows还是linux下面都非常得宠。因为linux与apache 都为开源产品且性能优异,应用非常广泛。

  · 淘宝网(阿里巴巴): Linux操作系统 + Web 服务器: Apache

  · 新浪:FreeBSD + Web 服务器:Apache

  · Yahoo:FreeBSD + Web 服务器:自己的

  · Google: 部分Linux + Web 服务器:自己的

  · 百度:Linux + Web 服务器: Apache

  · 网易:Linux + Web 服务器: Apache

  · eBay: Windows Server 2003/8 (大量) + Web 服务器:Microsoft IIS

  · MySpace: Windows Server 2003/8 + Web 服务器:Microsoft IIS