首頁 >後端開發 >php教程 >PHP 框架 ci 和 laravel 的问题

PHP 框架 ci 和 laravel 的问题

WBOY
WBOY原創
2016-06-06 20:22:051503瀏覽

我们用 laravel 或 ci 框架中的数据库配置,然后在每个控制器中取出数据。这样是不是和每个原生 php 单页写一个 mysql_contact ,就是每个页面都要连接数据库一次。本质是不同的,就是说 php 框架可以为我们配置一个持久数据连接,减少每个页面时的数据库重复连接开销吗?有人说框架中也是每个页面连接一次,并不能减少连接次数。到底框架中和原生单页中的连接方式频率是一样的吗。另外支持 mysql 读写分离,支持 redis 的 laravel/ci 框架,会不会比 flask,revel 不支持这些的框架后期扩展多 PV 更有潜力。

我发现 imooc.com 速度不错。请问根据 url 形式,这个网站有可能是用什么 PHP 框架做的。
是 ci2.0 吗?用了 redis 缓存吗? imooc.com/corp/index
用了什么后端技术,访问这么流畅。
我在 linode 东京 ubuntu vps 上执行 ab -c100 -n100 imooc.com/corp/index request per time : 600 多。
对谷歌执行 ab -c100 -n100 google.com/ request per time : 2000 多。
国内的很多网站,这个命令都返回是几十一二百到三四百。
我也想用一个好用的 php 框架, laravel 是优雅,就是 ab 的测试成绩只有 30 ,比 ci 210 差几倍。
请问 imooc.com 网站用的是 ci2 php 框架吗,到底怎么选择,谢谢。

回复内容:

我们用 laravel 或 ci 框架中的数据库配置,然后在每个控制器中取出数据。这样是不是和每个原生 php 单页写一个 mysql_contact ,就是每个页面都要连接数据库一次。本质是不同的,就是说 php 框架可以为我们配置一个持久数据连接,减少每个页面时的数据库重复连接开销吗?有人说框架中也是每个页面连接一次,并不能减少连接次数。到底框架中和原生单页中的连接方式频率是一样的吗。另外支持 mysql 读写分离,支持 redis 的 laravel/ci 框架,会不会比 flask,revel 不支持这些的框架后期扩展多 PV 更有潜力。

我发现 imooc.com 速度不错。请问根据 url 形式,这个网站有可能是用什么 PHP 框架做的。
是 ci2.0 吗?用了 redis 缓存吗? imooc.com/corp/index
用了什么后端技术,访问这么流畅。
我在 linode 东京 ubuntu vps 上执行 ab -c100 -n100 imooc.com/corp/index request per time : 600 多。
对谷歌执行 ab -c100 -n100 google.com/ request per time : 2000 多。
国内的很多网站,这个命令都返回是几十一二百到三四百。
我也想用一个好用的 php 框架, laravel 是优雅,就是 ab 的测试成绩只有 30 ,比 ci 210 差几倍。
请问 imooc.com 网站用的是 ci2 php 框架吗,到底怎么选择,谢谢。

一个简单ab测试,就能定性框架性能,未免有点儿草率。
即便要做ab测试,最好也是在同一个环境下对l和c进行测试。
首先,必须要承认的时候,l比c加载的东西更多,会慢。但其实我想说,这并不能成为选c的首要原因。
在更多地场合里,无论是c或l,可能整体所起得角色仅仅是前端读取渲染成web,后端是其他。
楼主无需过多担忧这些问题,当框架本身加载性能问题已经成为你的项目瓶颈的时候,那就是已经不是能单纯靠换框架来解决了。
无须多忧,选择好一个框架尽管可以入手项目了。除非你考虑yaf、phalcon或者swoole这些,其余众多框架请一概认为性能一样。

Read the fucking code.

不是打击,我只是觉得你根本不知道自己在问什么,你现在最迫切的是收起这些乱七八糟的猜想然后老老实实去看ci和laravel的实现,从index.php开始,一行行代码去看,遇到不懂的函数和写法多度娘多查manual,度娘都没能帮你解决的尝试写些能针对问题针对场景的试验性代码。

代码都没读,别人即使耐心地告诉你你又能如何,你理解的都是错的,你从各种博客各种工具各种书籍各种求助于别人解释所获取到的知识通通都是有偏差的。

只有代码是对的。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn