商丘做网站,商丘网站优化,商丘网络推广,商丘网络公司
当前位置:

PHP框架的选择及几款主流框架的性能基本评测

发表日期:2022-03-28 14:43聚圣源浏览次数: 本文关键词:框架,是一个,耦合,介绍,逻辑,参考,如果你,越好

需求

毫无疑问,Web框架技术在近几年已经得到了突飞猛进的发展和普及,在过去几年里,框架技术的普遍经历了比较大的完善过程,很大一部分可以归因于RubyonRails,以及在其他编程语言中流露出的MVC框架思想。

如果你是一个PHP忍者,而不是一个铁杆的Ruby追随者,你也许会惊奇市面上已经有这么多的框架,哪一个才是适合你的。当然回答和个问题取决于的诸多因素,今天我们将会回顾一下这个典型的问题,如何为你的下一个应用系统选择适合你的PHP框架。

同时我们也来看一下比较流行的PHP框架,比较一下他们的区别,这样可以帮你自己做出明智的选择,找到最适合你项目的框架。

明确你的需求

在你决定为你的项目选择一个框架之前,你当先理解需要,需求和了解一些开发团队幕后的工作,我们总结出了如下几个问题,在开始下一步之前你可以试着问问自己。

你的应用程序主要集中于解决哪些问题?

你的应用可以是一个电子商务平台,一个社交网站,消息共享平台或者活动目录,举例来说,如果你正在构建一个电子商务网站,你也许更希望选用一些具有用于处理信用卡和交易会话的成熟的扩展函数库的框架。另一方面,如果是一个轻量级的消息平台(比如说微博类系统),则你也许更应该注重快速的扩展和跨服务器跨数据的支撑访问能力,为了实现负载均衡和快速连接访问。

你的主机运行环境将是什么?

有些特殊的框架会需要使用到一些非默认的其它PHP扩展或者软件安装在服务器上,比如,有些框架的数据抽象层必须要求通过PDO来实现访问,而非直接调用更底层的MySQL或MySQLi,或者有些类似wiki类的程序的图像压缩和处理功能往往需要使用到ImageMagick或Graphiviz这些外部程序。而这些扩展也许并不会被所有的共享主机环境(虚拟主机)支持,此外即便是一个轻量级的小型框架,而且自我集成了所有所需的函数库并且也具有良好的可移植性和适应性,这样的框架应用在处理数据密集型的操作或者大型数据处理的系统时,性能又会成为它的主要瓶颈。

你的开发人员或团队的优势和劣势在于什么?

如果你是个项目经理,一个重要的事情是了解清楚你的具体开发人员他们的能力和弱势,因为他们是真的闷头干活儿人,所以也许你可以选择一些更加面向开发人员友好的容易上手的框架。当然这个问题的也许并不是影响决定是否采用一个框架的决定性因素(不断地要求自己和团队学习新的技术总是好的),但着绝对是一个会影响到你的时间表、预算和安全等多方面因素的重要考量条件。

如何在“高耦合性”还是“低耦合性”的框架中做出选择?

如果从框架产品自身的耦合性来将目前主流的php框架产品分为高耦合性和低耦合性两类。低耦合性的框架看起来更像是一个丰富的函数库和逻辑封装的抽象层,甚至有些好的框架自身就是PHP的一个高级扩展组件,比如PDO,它绝对算得上是一个数据访问的框架也是抽象层。还有一些其他值得一提的低耦合性框架,比如ZendFramework,CakePHP,以及国内开发的ThinkPHP都属于这个范畴。如果你将接手的项目历史问题比较多,并且对UI的自定义比较高,你恐怕需要一个低耦合性的框架来满足你灵活的需求。

另一方面是一些高耦合性框架的代表,比如一些由CRM衍生而来框架类似Drupal,Joomla,还有直接就是为了高耦合性而开发的OpenbizCubi框架,国内小范围流行的框架还有普元等。这些框架的最优秀的特点是可以让你完全只集中于实现你的核心业务逻辑,你甚至不用去管如何实现UI和用户会话管理这些基础特性,你只需要把你的代码和它们提供的接口规范进行“连接”就可以了。如果你负责的项目是一个新的项目,你肯定不希望把大部分的时间都花在实现基础业务逻辑上,比如可能是为客户公司开发一套“停车场管理系统”,还是选择类似OpenbizCubi这样的框架,在其之上直接去实现你的业务逻辑是最对得起你的时间预算和投资回报率的。

简单的性能评测案例 本次测试输出简单的hello word,简单MVC逻辑,(Router -> Controller -> Viewer),没有数据库连接,没有任何逻辑.

硬件平台 CPU: Intel Core i5 750 (2.67GHz x4)

RAM: 4GB

软件环境 Debian 6.0.4 x86_64 (2.6.32-41)

apache 2.2.16 (mpm-prefork,mod-php5)

php 5.3.10

php-apc 3.1.9 (Optimization for include/require)

Copy all projects to /dev/shm/* (Optimization for files read/write)

PHP框架列表 * zf: Zend Framework

Site: http://framework.zend.com

Ver: 1.11.11

* zf2: Zend Framework

Site: http://framework.zend.com

Site: https://github.com/zendframework/ZendSkeletonApplication

Ver: 2.0.0-beta1

* symfony: symfony

Site: http://www.symfony-project.org

Ver: 2.0.0

* cakephp: CakePHP

Site: http://cakephp.org

Ver: 2.0.4

* ci: CodeIgniter

Site: http://codeigniter.com

Ver: 2.1.0

* yii: Yii Framework

Site: http://www.yiiframework.com

Ver: 1.1.8

* micromvc4: MicroMVC

Site: http://www.micromvc.com

Ver: 4.0.0

* laravel: Laravel, A PHP Framework For Web Artisans

Site: http://laravel.com

Ver: 2.0.2

* slim: Slim Framework

Site: http://www.slimframework.com

Ver: 1.5.0

* yaf: Yet Another Framework in PHP Extension

Site: http://code.google.com/p/yafphp

Ver: 2.1.3-beta (yaf.cache_config=1)

* FuelPHP: Simple, Flexible, Community driven Web Framework

Site: http://fuelphp.com/

Ver: 1.1

* ColaPHP:

Site: http://code.google.com/p/colaphp/

Ver: 1.2-ga

# XHProf: A Hierarchical Profiler for PHP

Site: http://pecl.php.net/xhprof

Ver: 0.9.2

# The source code of this testing:

Source: https://github.com/eryx/php-framework-benchmark

1. Apache Benchmark Requests pre second (-c 100 -n 30000), the bigger is better

请求/秒(-c 200 -n 50000), 数值越大越好

2. 系统负载 压力测试一分钟内完成的负载图

越小越好(-c 100 -n 30000)

3. 内存使用率 测试hello word占用的内存,越小越好.

4. 响应时间 页面的响应时间.单位微妙

5. 调用方法的数量(Facebook XHProf) 单个hello word页面调用了多少方法,zend5620个方法,是不是太臃肿了。

6. 文件数量 打开hellow word用到included or required in 文件的数量.越小越好,zend很多,yii19个,yaf才4个,不快才怪。

如没特殊注明,文章均来自网络! 转载请注明来自:http://www.jushengyuan.com.cn/news/jzjy/660.html

网站设计案例推荐

热门文章

企业网站备案需要什么材料?需...

网站备案就像身份证一样,当企业进行网站改版或者次做网站需要进行域名备案工作,工作由当地的工信部门管理需要准备那些材料那?一起来看一下吧! 企业网站备 1、办单位有效证件扫描件上...

日期:2021-03-04 浏览次数:8000

手机建站教程:手机网站建设的...

手机网站建设的定义 在中国,有4亿网民正在使用手机浏览产品和服务信息,可以让您随时随地处理客户咨询、客户预约、企业管理,赋予您一个8小时之外的移动秘书。我们对每一个手机网站都会...

日期:2019-11-04 浏览次数:8000

网站超链接怎么做 其实很简单...

如何创建站点超链接?SiteTime是一个站点中很常见的元素类型,在 HTML入门教程中,也会解释什么是 a标签, A标签就是做站点 Time的标签。 站点超链接生成方式 修改后缀为 html的新 txt文件 打开记事...

日期:2021-06-02 浏览次数:7999

挑选适合自己的网站建站程序技...

在互联网发展突飞猛进的今天,网站建站已不是什么稀奇事儿,也没有大家想的那么复杂,但要做好就有点难了。经常建站的人都知道,想建好一个网站,选择一款适合自己的建站程序很重要,目...

日期:2019-12-16 浏览次数:7998

都说自助建站更便宜 和手工建站...

费用对比 1、经济、标准型企业网站费用比较 网站建设费用:总费用1800元至3600元,含域名、100M-200M的优质空间(可自由增加)、110M企业邮局(即你的域名后缀邮箱帐号)、网站制作设计、有后台...

日期:2019-11-08 浏览次数:7998

相关文章

网站设计趋势:把复杂留给自己...

最近在今日头条听了一个培训音频,叫说书,意思大概是现在的书太多了,很多人想读书却没有时间,就诞生了这样的一个职业,把一个本的内容简单的概括一下,然后通过音频的方式传播给大家...

日期:2019-08-01 浏览次数:7272

12个启发灵感的电子商务网站设...

设计一个电子商务网站是一项很大的工作。对一个初创公司来说,现在推出网上商店比以前容易了。 像Shopify这样的软件,拥有令人惊叹的可定制模板库,可以轻松地打造漂亮而且高度沉浸式的电...

日期:2019-08-01 浏览次数:7924

LOGO设计的灵感,原来如此简单!...

随着智能手机的普及,也带来了移动应用的白发和创业热潮,应用商店中出现了大量的APP,然而对于每一个移动应用创业者而言,在搭建APP前,需要为其设计一个合适的LOGO。 众所周知,LOGO对于产...

日期:2019-08-14 浏览次数:5005

网站建设前应如何策划建站方案...

第一、品牌网站建设的重要性 品牌是一个产品的代词,品牌的推广对于实现品牌的最终提升非常重要,品牌甚至可以被用作某一类型产品的代表,或者得到一个产品来看到一个品牌。品牌的建设和...

日期:2019-09-20 浏览次数:5022

“会说话”的logo,企业品牌需要...

不在状态,关键时刻脉动回来的脉动更换新的logo了,根据去年法国达能集团公布的业绩显示,在其他收入都呈现增长模式下,唯独维生素饮料脉动的销售额始终保持在一条水平线上。 为了能够吸...

日期:2019-09-26 浏览次数:7667

随机推荐

外贸建站程序用什么比较好?该...

推广域名在微信中被拦截、封杀...

浅谈网站服务器的负载能力问题...

为网站申请和配置StartSSL的SSL证...

网站建设选自助建站,还是定制...

模板建站的缺点 你了解多少?...