Laravel扩展推荐:ORM 缓存包 “LaraCache”

发布时间 - 2022-10-13 00:00:00    点击率:

LaraCache 是一个基于 ORM 的 Laravel 包, 用于基于模型查询创建、更新和管理缓存项。使用此包,您可以缓存在整个应用程序中大量使用的查询。

use Mostafaznv\LaraCache\Traits\LaraCache;

class Article extends Model
{
    use LaraCache;

    public static function cacheEntities(): array
    {
        return [
            CacheEntity::make('list.forever')
                ->cache(function() {
                    return Article::query()->latest()->get();
                }),

            CacheEntity::make('latest')
                ->validForRestOfDay()
                ->cache(function() {
                    return Article::query()->latest()->first();
                })
        ];
    }
}

使用 cacheEntities 方法来定义缓存的查询,Laracache 会处理剩下的事情。要使用缓存查询,您将调用模型,如下例所示:

use Mostafaznv\LaraCache\Facades\LaraCache;

$cache = Article::cache()->get('latest');
// 或者
$cache = LaraCache::retrieve(Article::class, 'latest');

使用此软件包,您可以使用以下功能控制缓存:

  • 启用/禁用缓存
  • 手动更新缓存
  • 手动更新所有缓存实体
  • 删除缓存
  • 使用 fluent 方法或 ttl()方法控制CacheEntity 持续时间

我认为以下手动缓存更新方法很简洁,可以即时刷新缓存:

Article::cache()->update('latest');2// or3LaraCache::update(Article::class, 'latest');

您可以了解此软件包、获取完整的安装说明,并在 GitHub 上查看 源代码 。

原文地址:https://laravel-news.com/laracache-orm-caching-package-for-laravel译文地址:https://learnku.com/laravel/t/68860

【相关推荐:laravel视频教程】


# laravel  # php  # for  # github  # https  # 您可以  # 软件包  # 新和  # 是一个  # 并在  # 我认为  # 所示  # 您将  # 方法来  # 要使 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  Python文件异常处理策略_健壮性说明【指导】  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  浅谈Javascript中的Label语句  Swift中switch语句区间和元组模式匹配  如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体  Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧  Swift中swift中的switch 语句  如何快速搭建高效简练网站?  EditPlus中的正则表达式实战(5)  网站制作软件免费下载安装,有哪些免费下载的软件网站?  zabbix利用python脚本发送报警邮件的方法  高端网站建设与定制开发一站式解决方案 中企动力  Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率  如何快速生成橙子建站落地页链接?  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  如何在搬瓦工VPS快速搭建网站?  Laravel安装步骤详细教程_Laravel环境搭建指南  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  html5如何实现懒加载图片_ intersectionobserver api用法【教程】  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  Laravel如何使用Eloquent进行子查询  Laravel Docker环境搭建教程_Laravel Sail使用指南  laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法  如何安全更换建站之星模板并保留数据?  什么是JavaScript解构赋值_解构赋值有哪些实用技巧  如何用花生壳三步快速搭建专属网站?  悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】  个人网站制作流程图片大全,个人网站如何注销?  网易LOFTER官网链接 老福特网页版登录地址  怎么用AI帮你设计一套个性化的手机App图标?  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  如何快速搭建安全的FTP站点?  Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  如何实现建站之星域名转发设置?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  微信小程序 配置文件详细介绍  大型企业网站制作流程,做网站需要注册公司吗?  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  如何在阿里云虚拟主机上快速搭建个人网站?  Laravel DB事务怎么使用_Laravel数据库事务回滚操作