ubuntu

Laravel在Ubuntu上如何实现缓存

小樊
45
2025-10-25 01:58:22
栏目: 智能运维

在 Ubuntu 上使用 Laravel 实现缓存有多种方法,包括文件缓存、Redis 缓存和 Memcached 缓存。以下是每种方法的详细步骤:

1. 文件缓存

文件缓存是最简单的缓存方式,适用于开发和小型应用。

步骤:

  1. 安装 Laravel: 如果你还没有安装 Laravel,可以使用 Composer 安装:

    composer create-project --prefer-dist laravel/laravel your-project-name
    
  2. 配置缓存驱动: 打开 .env 文件,找到 CACHE_DRIVER 设置,并将其设置为 file

    CACHE_DRIVER=file
    
  3. 创建缓存目录: 确保 Laravel 的缓存目录存在并且可写。默认情况下,缓存目录是 storage/framework/cache/data。你可以手动创建这个目录并设置权限:

    sudo mkdir -p storage/framework/cache/data
    sudo chmod -R 775 storage/framework/cache/data
    sudo chown -R www-data:www-data storage/framework/cache/data
    
  4. 测试缓存: 你可以使用 Artisan 命令来测试缓存是否正常工作:

    php artisan cache:store
    php artisan cache:clear
    

2. Redis 缓存

Redis 是一个高性能的键值存储系统,适用于大型应用。

步骤:

  1. 安装 Redis: 使用以下命令安装 Redis:

    sudo apt update
    sudo apt install redis-server
    
  2. 启动 Redis 服务: 确保 Redis 服务正在运行:

    sudo systemctl start redis-server
    sudo systemctl enable redis-server
    
  3. 安装 PHP Redis 扩展: 使用以下命令安装 PHP Redis 扩展:

    sudo apt install php-redis
    
  4. 配置 Laravel 使用 Redis: 打开 .env 文件,找到 CACHE_DRIVER 设置,并将其设置为 redis

    CACHE_DRIVER=redis
    
  5. 配置 Redis 连接: 打开 config/database.php 文件,找到 redis 部分,配置 Redis 连接信息:

    'redis' => [
        'client' => env('REDIS_CLIENT', 'predis'),
        'default' => [
            'host' => env('REDIS_HOST', '127.0.0.1'),
            'password' => env('REDIS_PASSWORD', null),
            'port' => env('REDIS_PORT', 6379),
            'database' => env('REDIS_DB', 0),
        ],
    ],
    
  6. 测试缓存: 使用 Artisan 命令来测试缓存是否正常工作:

    php artisan cache:store
    php artisan cache:clear
    

3. Memcached 缓存

Memcached 是另一个高性能的分布式内存对象缓存系统。

步骤:

  1. 安装 Memcached: 使用以下命令安装 Memcached:

    sudo apt update
    sudo apt install memcached
    
  2. 启动 Memcached 服务: 确保 Memcached 服务正在运行:

    sudo systemctl start memcached
    sudo systemctl enable memcached
    
  3. 安装 PHP Memcached 扩展: 使用以下命令安装 PHP Memcached 扩展:

    sudo apt install php-memcached
    
  4. 配置 Laravel 使用 Memcached: 打开 .env 文件,找到 CACHE_DRIVER 设置,并将其设置为 memcached

    CACHE_DRIVER=memcached
    
  5. 配置 Memcached 连接: 打开 config/database.php 文件,找到 memcached 部分,配置 Memcached 连接信息:

    'memcached' => [
        'client' => env('MEMCACHED_CLIENT', 'php_memcached'),
        'persistent_id' => env('MEMCACHED_PERSISTENT_ID', null),
        'sasl' => [
            env('MEMCACHED_USERNAME'),
            env('MEMCACHED_PASSWORD'),
        ],
        'options' => [
            // Memcached::OPT_CONNECT_TIMEOUT  => 2000,
        ],
        'servers' => [
            [
                'host' => env('MEMCACHED_HOST', '127.0.0.1'),
                'port' => env('MEMCACHED_PORT', 11211),
                'weight' => 100,
            ],
        ],
    ],
    
  6. 测试缓存: 使用 Artisan 命令来测试缓存是否正常工作:

    php artisan cache:store
    php artisan cache:clear
    

通过以上步骤,你可以在 Ubuntu 上使用 Laravel 实现不同类型的缓存。选择哪种缓存方式取决于你的应用需求和性能要求。

0
看了该问题的人还看了