php的cache
phpcache是存储在哪里?硬盘上,还是内存里,各有什么方法实现吗?如果是存储在硬盘上,是不是只是减少了和数据库连接的时间?还有就是PHP数据库连接池是怎么回事?原理是...
php cache是存储在哪里?硬盘上,还是内存里,各有什么方法实现吗?
如果是存储在硬盘上,是不是只是减少了和数据库连接的时间?
还有就是PHP 数据库连接池是怎么回事?原理是什么?
大家做网站的时候是用什么模板引擎,smarty?如果服务器不支持那不就用不到了?还是自己编写引擎? 展开
如果是存储在硬盘上,是不是只是减少了和数据库连接的时间?
还有就是PHP 数据库连接池是怎么回事?原理是什么?
大家做网站的时候是用什么模板引擎,smarty?如果服务器不支持那不就用不到了?还是自己编写引擎? 展开
展开全部
大体可以这样和你说吧。。好理解。。。
1. 内存级缓存。 - xcache memcached等
2. 文件级缓存。(数据缓存和模板缓存) - 就是把一些本来要查询数据库的东西 直接把数据取出来写到文件 用的时候读出来。。。。
3. 模板引擎。。。跟服务器支持不支持没关系。。。。
4. web应用的性能瓶颈通常情况下, 是出现在数据库上的。 包括一些大数据量下的检索等 。
5. 数据库连接池。。额。。。 你说的是长连接吧? PHP本身是。。。那啥的。。。执行完之后就全部销毁了。。。。
1. 内存级缓存。 - xcache memcached等
2. 文件级缓存。(数据缓存和模板缓存) - 就是把一些本来要查询数据库的东西 直接把数据取出来写到文件 用的时候读出来。。。。
3. 模板引擎。。。跟服务器支持不支持没关系。。。。
4. web应用的性能瓶颈通常情况下, 是出现在数据库上的。 包括一些大数据量下的检索等 。
5. 数据库连接池。。额。。。 你说的是长连接吧? PHP本身是。。。那啥的。。。执行完之后就全部销毁了。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
php cache就是把动态页面生成静态页面,把动态的内容写成静态的html文件然后放在硬盘上特定的文件夹里(就是设定存放cache的目录),这时候再读取同一个页面的时候,只要页面没过期就直接把cache文件夹里面的那个html文件输出,根本就不用连接数据库了,至于连接池,一般很少用到
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、cache在硬盘上只是内存的一个映射。当有大量的客户端请求时,cache发挥作用当然是由内存提供的。所谓cache消耗内存,但是却可以减少数据库的查询,这两方面的平衡要根据你的网站访问量来配置服务器的硬件性能。cache和静态页面也不能混为一谈,cache是动态变化的,静态页面是不变的。
2、数据库连接池是由数据库管理系统提供的,和php并没有多大关系,原理简单地说就是预置了很多连接通道,当有一个连接请求来的时候,如果有闲置的连接通道,马上就启用,连接线程结束之后又恢复为空闲,如果没有,请求就放在等候队列里。
3、smarty模版用的很多了,所谓模板引擎是由脚本本身支持的,和服务器无关,所以不存在服务器不支持的问题了。
2、数据库连接池是由数据库管理系统提供的,和php并没有多大关系,原理简单地说就是预置了很多连接通道,当有一个连接请求来的时候,如果有闲置的连接通道,马上就启用,连接线程结束之后又恢复为空闲,如果没有,请求就放在等候队列里。
3、smarty模版用的很多了,所谓模板引擎是由脚本本身支持的,和服务器无关,所以不存在服务器不支持的问题了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
cache一般都是存在硬盘上,以文件的形式,不清楚有什么缓存存在内存中,只是觉得php的一个请求完成,应该相应的内存就释放了,放在内存中应该不能起到缓存作用吧,另外内存是服务器非常重要的资源,大量被缓存使用了应该不但性能不见得会提高,反而稳定性崩溃了。。而且了,对于web服务来说,简单的文件读取的时间并不是性能的瓶颈,完全没有必要减少这点io时间;
cache放在硬盘上就相当于把动态的页面变成了静态的,当然减少了数据库连接和读取的时间,而一般数据库是web服务最为重要的部分,就这一点就相当有价值了,另外也减少了php逻辑代码的执行,对性能提高应该是有相当大的意义的,你想如果完全cache到全部变成静态页面了(当然不可能),这还有什么好继续cache的呢?
php数据库连接池没用过,一般来说应该意义也不是太大(可能我不懂),不过一般什么池什么池的都是那么回事,就是把一定数量的资源集中管理,需要就从里面取,用完回收,其实也就是减少了资源创建(初始化)及销毁的开销,如果有php数据库连接池(或者你自己实现连接池),应该也是这个意思
cache放在硬盘上就相当于把动态的页面变成了静态的,当然减少了数据库连接和读取的时间,而一般数据库是web服务最为重要的部分,就这一点就相当有价值了,另外也减少了php逻辑代码的执行,对性能提高应该是有相当大的意义的,你想如果完全cache到全部变成静态页面了(当然不可能),这还有什么好继续cache的呢?
php数据库连接池没用过,一般来说应该意义也不是太大(可能我不懂),不过一般什么池什么池的都是那么回事,就是把一定数量的资源集中管理,需要就从里面取,用完回收,其实也就是减少了资源创建(初始化)及销毁的开销,如果有php数据库连接池(或者你自己实现连接池),应该也是这个意思
追问
你知道不知道PHPCMS是采用什么模板引擎的?你一般做的时候一般是怎么做的?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询