7 18

Lumen配置文件按需加载出现的坑

问题描述

公司一个高并发API需要从Laravel移植到Lumen,由于数据库配置信息是通过远程或者缓存读取后动态配置,所以在中间件时使用到了 Config::set 然而实际运行时发现数据库配置并没有更新。

由于是从Laravel移植,因此保留了Facades的写法,Lumen中可以通过以下方法使用Facades:

  • 取消 bootstarp/app.php$app->withFacades(); 的注释
  • use Illuminate\Support\Facades\XXX

另一方面,系统使用 Redis 作为缓存,通过 env 配置 Redis ,配置信息存储在 laravel/lumen-framework/config/database.php 在没有使用数据库先使用缓存的情况下,报没有传配置项的错误。

更新的