ThinkPHP框架搭建大型购物网站优化

在搭建网站的时候,若是是比较大型的网站且访问量比较大的,前台程序就须要优化;若是使用TP框架的话,通常来讲网站能够接收的并发请求比原生态PHP少几倍甚至更多,因此若是使用框架,前台程序更须要优化。下图是使用ab.exe网站压力测试结果,分别是使用原生态php和TP框架打印phpinfo();php

 

网站优化的选择?redis

TP中自带缓存功能,能够把一个页面配置必定的时间。(配置一下便可)数据库

 

1. 不常常发生变页面生成静态页(指定一个过时时间,过时以后自动从新生成页面)缓存

2. 静态页面实时变化的数据使用AJAX来获取服务器

3. 实时查询数据的功能如何优化。(网站启动时先把数据库中的数据导入到memcache中,这样网站中的程序就只操做memcache不操做数据库,而后按期把memcache中的数据同步到数据库中)session

       a)  通常网站只把频繁访问的小数据放到memcache中操做(session,购物车中的数据,商品的库存量等等)并发

       b) 使用memcache的问题:若是服务器出现故障重启,那么memcache中的数据就丢失了。怎么解决?框架

         至少有一台备份用的memcache服务器,每次操做数据时,把在备份的memcache服务器上保存一份,这样即主服务器坏了,在备份服务器上也能够还原数据,备份服务器和主服务器同时出故障机率不高。测试

         redis也能够作内存服务器。redis能够把数据自动回写到硬盘,缺点是慢,由于每次要写硬盘,通常是一秒写一次,在1秒数据若是还没写到硬盘就会丢失。通常用redis也要搭成主从服务器,主服务器上不写硬盘,让从服务器每次把数据写硬盘。优化

有些功能没法使用memcache(数据量太大,没有那么多memcache服务器)。只有靠数据库集群(主从复制、读写分离),如:商品搜索的功能。

相关文章
相关标签/搜索