LAMP架构下的Web开发概念、流程及优化策略(一)

架构设计 ——前端架构 后端架构 视觉体系 
对接约定 ——接口约定 标识约定 通讯代码约定 
开发 ——建立开发框架 建立数据库 实施编码 
测试 ——功能测试 性能测试

 

一、架构设计

 

 

LAMP架构下的Web开发概念、流程及优化策略(一)

二、对接约定

1、接口约定

约定请求方式(普通HTTP请求,XMLHTTP请求,SOAP请求,phprpc请求)、请求类型(POST,GET,HEADER)、请求地址、请求参数。(前端请求四要素,文档中体现,程序中实现。)

2、标识约定

为确保前后端并行开发,减少开发的时间周期,需要在开发前就做好标识约定,通过文档描述清楚前端模板变量和后端程序变量之间的约定关系,以及后端返回各种状态值的含义。

建议的最佳应用是:后端不对用户视图负责,只管输出状态代码。呈现给用户的视图由前端负责。

 

三、各类web服务器优缺点比较

 Nginx

优点:原生支持反向代理,带有简单的负载均衡及容错机制。速度最快。(10%-1000%),占用资源很少。

缺点:文档较少,手工配置,只能以fast-cgi方式运行php.

 Apache

优点:文档丰富,稳定(!?),应用环境多。

缺点:占用资源较多,高压力下表现性能不如nginxlighttpd,手工配置。

 IIS

优点:文档丰富,win平台下安装简单配置方便

缺点:不支持跨平台,性能低下。

 

四、常见web系统组织图

 

LAMP架构下的Web开发概念、流程及优化策略(一)

五、PHP在web应用中的特点

 语言弱类型

 脚本运行,生命周期短。

 面向对象与面向过程并存。

 弱效率、重流程、强扩展。

 

LAMP架构下的Web开发概念、流程及优化策略(一)

 

1、PHP的优点

 适合web开发。将web开发中常用的行为、内容做了良好的封装。程序员可以很轻易的使用它们。

 基于脚本的运行方式,修改代码后不需要重新编译,很多情况下也不需要重启服务器。

 开发快捷,部署方便,支持环境众多。

 非常优秀的扩展能力。非常多的扩展子件。

 开发框架众多。对多种数据库支持很好

 良好的社区支持,本身开源。修改容易

 

2、PHP的缺点

 容易写出坏的代码。(解决方法:严格遵循规范)

 效能不高。(解决方法:复杂业务使用C扩展)

 每次执行都要经历扫描-编译-执行的阶段,无执久对象模型。(解决方法:使用APC

 命名混乱,参数混乱,得随时翻着手册

 

3、PHP框架

 对开发者起编码约束作用。

 提供了ORM,使对数据库变成对数据对象的访问,让程序员对数据的处理更加专注于面向对象上.

 通过配置(无需改动代码)即能变更服务环境,使得迁移成本减小

 方便程序员实现完整的MVC开发模式.使程序员更专注于业务领域,不再过多关注建立数据模型的底层代码以及处理视图展示.

 内置大量开发中的常用工具。可随时调用。也可自己扩展编写。

 本身即由PHP编写。可随时修改以满足达到自己的需求。

 

 














本文转自百度技术51CTO博客,原文链接:http://blog.51cto.com/baidutech/748354,如需转载请自行联系原作者