如果 YII 有 C 寫成的 extension ?

現在有越來越多的 PHP MVC Framework 是以 C 寫成 PHP extension , 效能極高啊 , 如 Yaf , PhalconPHP

我在想 PHP 終究有其效能的限制. 一個純 PHP 寫成的 Framework 再怎麼好用 , 終究免不了要投入更多的硬體成本來提高網站吞吐量.

回想一下 , 很多人都有用過 ADODB 吧.

ADODB 也有ㄧ個 php extension 叫 adodb-ext.

如果有安裝了 adodb-ext , 則 ADODB 會自動呼叫 adodb-ext 中提供的 function 來加速.

而這樣子的作法不會喪失掉相容性 , 畢竟 Yaf , palcon 這種方式必須要 Server 一定要安裝該 extension 才能使用.

但 ADODB 則沒這問題. 如果沒安裝 adodb-ext , 則 ADODB 會用純 PHP 的方式運作 , 若有裝 , 某些部分得以加速.

如果 Yii 也可以把一些常用的物件或Component 寫成 PHP extension. 而又模仿 ADODB 的作法 , 如此可以大幅提高 YII 的效能 , 同時又不會影響相容性 , 不知道開發團隊有沒有這樣的計畫 ?

由於英文不好 , 所以不知道怎麼表達到論壇上的 Feature request. 所以寫在這.

只为了性能而c扩展,不值得的.

1.很多虚拟空间不支持c扩展的,用户少

2.c扩展开发成本高,不容易维护

如果网站规模流量大到了性能成为问题,再想办法不晚.

当然,鼓励那些写c扩展的小众应用,还是有需求的 :rolleyes:

这确实 是一个值得期待的事 yaf估计会成为新浪微博的开发框架(那个哥们已经从百度跳槽到新浪了) 但yii估计不可能发展成这样

. yii框架由于贡献者很多(包括特性请求 bug提交 扩展的提交) 核心代码不断改进 版本更新速度很快 如果要提供c扩展那么就要求开发者懂c语言和php语言 从维护角度看 成本很高 必须双份推进

至于php扩展的安装这个不是问题 用yii的项目都是中型规模以上 一般都有自己的主机或虚拟主机空间 小项目用yii感觉是牛刀杀鸡

:lol:

抱歉

上面兩位可能沒有研究過 ADODB 的方式

ADODB-EXT 只是把部份的運算挪到 C 去作 , 在 ADODB 的純 php source code 會自動判斷是否有加裝 adodb-ext

若有 , 就把部份資料運算以 ADODB-EXT 去作 , 在虛擬空間上當然無法自己加裝 EXTESION , 但無礙 , 只是速度維持在 PHP 的速度

但若 Server 為自己所掌控 , 加裝上去跑更快而已 , 所以沒有所謂虛擬空間能不能跑, 相不相容的問題喔