随笔分类 - php
摘要:设计目的 方便的管理一级缓存,当有新的缓存需求出现时,尽可能的少改代码 框架背景 thinkphp6,需要借助模型事件特性 设计要点 支持管理两种缓存场景,1、配置型小表整表缓存为单key 2、业务型大表分id缓存为多key 缓存与模型绑定,通过模型自动拼接缓存key,如有新的缓存需求,配置下模型类
阅读全文
摘要:目的:封装一个公共包,供全项目使用,最大化的抽象封装,减少重复代码,里面可以包含公共函数库、工具类、跨服务调用接口类,包罗万象 肯定是要用到composer管理的,两种方式: 1、加载本地包,当所有项目部署在同一台服务器上时,可以采用这个方式,https://codeleading.com/arti
阅读全文
摘要:目的 取代linux crontab的计划任务,那玩儿意最小粒度一分钟,意味着服务器不管如何清闲都会有一分钟延迟 实现原理 while (TRUE) {} 没错,就是这么粗暴,一个永不停止的无限循环,具体不多说,代码里注释写的非常明白了,上代码 1、首先实现一个进程管理器,因为一个处理进程开启后,s
阅读全文
摘要:1、服务器mongodb安装(下载地址https://www.mongodb.com/try/download/community) yum install -y https://repo.mongodb.org/yum/redhat/7/mongodb-org/6.0/x86_64/RPMS/mo
阅读全文
摘要:错误代码如下 function apiSuccess(mixed $data = [], string $msg = 'ok'): array { return apiReturn(System::SUCCESS_DEFAULT_CODE, $msg, $data); } 原因是mixed混合类型参
阅读全文
摘要:基本介绍 典型的创建型模式,由调用层传参决定实例化类然后执行相应类的方法,优点是调用层和底层解耦 和策略模式的区别 同样都是由工厂返回操作类执行该类方法,区别在于策略模式的操作类由调用层实例化传参,工厂模式由调用层的参数决定 demo 工厂类 /** * Desc:简单工厂模式返回操作类 * Aut
阅读全文
摘要:基本介绍 整个请求生命周期内只实例化一次目标类,可以节省内存消耗 demo <?php namespace App\study; /** * Desc:单例模式 * Author:glt 2022/1/10 17:51 */ class Single { //静态私有属性,存放对象 private
阅读全文
摘要:基本介绍 策略模式就是使用封装一个公共抽象算法,每个算法(比如,打折算法,满减算法)实现这个接口,然后搞个策略工厂类来调用这些算法,本质上是一种高级的封装方式。 demo 定义接口抽象要封装的一类行为 interface SendMessage { public function send(); }
阅读全文

浙公网安备 33010602011771号