ThinkPHP5使用Redis作为缓存和session存储

ThinkPHP5的缓存和session默认使用文件存储。

application/config.phpcachetypeFile,而sessiontype是空。

可以改用Redis作为缓存和session的存储,效率更高。在分布式的环境中,使用Redis来存储,可以保证数据的一致性和会话的一致性。

改写如下:

'cache'                  => [
    // 驱动方式
    'type'   => 'Redis',
    'host'   => 'web-redis', // redis主机
    'port'   => 6379, // redis端口
    // 缓存保存目录
    'path'   => CACHE_PATH,
    // 缓存前缀
    'prefix' => '',
    // 缓存有效期 0表示永久缓存
    'expire' => 0,
],
    // +----------------------------------------------------------------------
    // | 会话设置
    // +----------------------------------------------------------------------
'session'                => [
    'id'             => '',
    // SESSION_ID的提交变量,解决flash上传跨域
    'var_session_id' => '',
    // SESSION 前缀
    'prefix'         => 'think',
    // 驱动方式 支持redis memcache memcached
    'type'           => 'redis',
    'host'           => 'web-redis', // redis主机
    'port'           => 6379, // redis端口
    // 是否自动开启 SESSION
    'auto_start'     => true,
],

cachesession都配置了hostport,表示自定义的Redis主机和端口,如果不配置,则默认为127.0.0.16379

Leave a Comment

豫ICP备19001387号-1