| 
      	 论坛终于来到了1.3 也来到了数据缓存版本
   
 
 我们目前的程序使用的旧文件缓存,对一些常操作数据的地方进行了文件缓存。 我们都知道一套程序从开始到结束,都是在消耗服务器资源,何况要面对如此多的用户,我们的程序有调试信息,上面有我们的程序跑分,显示程序耗时与内存使用。 但内存使用的显示仅仅是我们程序执行过程中的消耗,并不代表是php编译进程等一系列内核消耗。 所以过程消耗内存远远不止于这点,还有程序运行速度也一样,只是单纯记录程序开始到结束所消耗的时间。  接下来比对一下 DEBUG开启与关闭的运行速度
 开启DEBUG 刷新10次左右 均在 0.040 左右  
 
 关闭DEBUG 刷新10次左右 均在 0.015 左右  
 
 OK ,可见关闭DEBUG 提升速度将是 2 - 3 倍的 !  
 论坛执行消耗过程
 打开DEBUG , SQL查询 (14) , 文件加载统计 (25), New 类 (15) 关闭DEBUG,  SQL查询 (6) , 文件加载统计 (23) , New 类 (13) 
 我们主要是看SQL查询, 可见打开DEBUG后 论坛是不使用缓存的,并且会随着每次访问都会生成新的。 
 访问首页 开启DEBUG 所使用的SQL - SELECT * FROM "hy_user" WHERE "id" = '1' LIMIT 1 [耗时] 0.001ms
 - SELECT * FROM "hy_forum" [耗时] 0ms
 - SELECT * FROM "hy_usergroup" [耗时] 0.001ms
 - SELECT COUNT(*) FROM "hy_post" [耗时] 0ms
 - SELECT COUNT(*) FROM "hy_thread" [耗时] 0ms
 - SELECT COUNT(*) FROM "hy_user" [耗时] 0ms
 - SELECT * FROM "hy_thread" ORDER BY "id" DESC LIMIT 0,10 [耗时] 0.001ms
 - SELECT "user" FROM "hy_user" WHERE "id" = '1' LIMIT 1 [耗时] 0ms
 - SELECT "user" FROM "hy_user" WHERE "id" = '1' LIMIT 1 [耗时] 0ms
 - SELECT * FROM "hy_thread" WHERE "top" = 2 [耗时] 0ms
 - SELECT "user" FROM "hy_user" WHERE "id" = '1' LIMIT 1 [耗时] 0ms
 - SELECT "user" FROM "hy_user" WHERE "id" = '1' LIMIT 1 [耗时] 0.001ms
 - SELECT COUNT(*) FROM "hy_thread" [耗时] 0ms
 
 关闭DEBUG 所使用SQL - SELECT * FROM "hy_user" WHERE "id" = '1' LIMIT 1 [耗时] 0ms
 - SELECT COUNT(*) FROM "hy_post" [耗时] 0ms
 - SELECT COUNT(*) FROM "hy_thread" [耗时] 0ms
 - SELECT COUNT(*) FROM "hy_user" [耗时] 0.0156ms
 - SELECT COUNT(*) FROM "hy_thread" [耗时] 0ms
 
 可见 关闭DEBUG后的SQL少了非常多, 因为数据都被缓存了。 如果我们没有缓存,那么每个用户访问都要操作SQL,负载是很高的,特别是数据大的网站。 
 目前数据缓存系统已经支持最基本的 File 与 DB, 并支持第三方扩展内存缓存, - Apachenote
 - Apc
 - Eacceleratpr
 - Memcache
 - Memcached
 - Redis
 - Shmop
 - Wincache
 - Xcache 
 
 支持Memcached 负载均衡内存服务器  
 
 
 
 论坛内核提供了缓存函数 , 一键缓存数据, 从而二次开发以及插件开发 使用缓存更加简单方便!         											 
										 |