arserangel 发表于 2014-10-21 11:13

关于纯c实现php及网站的一些看法

追求高性能的话,可以用纯c实现网站,即用c写一个php扩展,通过这个扩展实现一个 php函数。

当然,也可以写成 nginx 或者 apache 模块,不过,这样的话,就依赖于某一种 web 服务器了。

思路:
1. 通过 apache 或 nginx 的 rewrite 方式,把路径,重写为 /控制器/方法名 模式。

2. 在 php扩展中, 读取到 控制器和方法名,以控制器为目录,方法名表示一个 c 源文件,实现面向文件/模块编程。

3. 将可能会用到的全站 route 写到一个 文件文件里,或者直接写到一个 h 文件里,通过 方法名,来调用相应的文件里对应的函数,如 /pages/index 则调用 /controllers/pages 目录下 index.c 文件里的 pages_index方法。

4. 通过模板 如 ctemplate,先判断是否有缓存,如果没有缓存,则利用模板,生成缓存。

5.返回给浏览器,利用 php_printf() ..

目录结构大致如下:

php源代码/ext/扩展名/
    controllers
    models
    include
    libs

网站根目录
    rewrite.conf/.htaccess
    templates
    css
    images
    js
    files

以上。

bs 发表于 2014-10-21 16:52

都用c写了,为什么还要写 php 扩展,nginx扩展不是更快?

arserangel 发表于 2014-10-21 18:53

回复 2# bs


    你说的对。确实,是我考虑不足,应该用 nginx 模板来实现。

昭襄王 发表于 2014-10-22 16:51

有这样的框架,我知道的至少有两个。

arserangel 发表于 2014-10-22 17:23

回复 4# 昭襄王


    哪两个? yaf ? ph ?
页: [1]
查看完整版本: 关于纯c实现php及网站的一些看法