## 项目上线优化
> 网站项目的瓶颈, 一般在于数据库的读取. 所以尽量介绍数据的读取操作.
公共开放的接口如banner 等可以设置为缓存以提升项目性能.
thinkphp5 缓存
1.数据库表缓存
~~~
生成数据表字段缓存
可以通过生成数据表字段信息缓存,提升数据库查询的性能,避免多余的查询。命令如下:
php think optimize:schema
执行完毕,会在RUNTIME_PATH目录下面创建schema目录,然后在该目录下面按照database.table.php的文件命名生成数据表字段缓存文件。
~~~
2.路由缓存
~~~
如果你的应用定义了大量的路由规则,那么建议在实际部署后生成路由缓存文件,可以免去路由注册的开销,从而改善路由的检测效率
php think optimize:route
指令执行成功后,会在rumtime目录下面生成route.php 文件,生成的路由缓存文件仅仅支持在应用的路由配置文件中定义的路由(包括方法定义和配置定义)
~~~
补充:
> 商品的购买流程推荐使用消息队列.