摘要:
详细请点击 https://blog.csdn.net/qq_38293564/article/details/80883704 以下是自己总结; 接下来我们来重点看一下比较重要的几个字段 type type类型的性能比较 通常来说,不同的 type 类型的性能关系如下: ALL < index < 阅读全文
摘要:
使用ab.ext 并发测试通过 $fp = fopen("lock.txt","w+");if(!flock($fp,LOCK_EX | LOCK_NB)){//echo "系统繁忙,请稍后再试"; writeFile("系统繁忙,请稍后再试".flock($fp,LOCK_EX | LOCK_NB 阅读全文
摘要:
测试环境,php5.6.27,php7会有报错 准备俩个域名 1,http://myphp.test.com/rpcserver.php 充当服务端 代码如下; <?phpinclude("vender/phprpc/phprpc_server.php");//直接调用方法function Hell 阅读全文
摘要:
如果一个请求更新缓存的时间比较长,甚至比锁的有效期还要长,导致在缓存更新过程中,锁就失效了,此时另一个请求会获取锁,但前一个请求在缓存更新完毕的时候,如果不加以判断直接删除锁,就会出现误删除其它请求创建的锁的情况,所以我们在创建锁的时候需要引入一个随机值: $ok = $redis->set($ke 阅读全文
摘要:
<?php //高并发分布式锁 header("Content-type:text/html;charset=utf-8"); $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo "Connection to server s 阅读全文
摘要:
//策略模式 interface ChargeStrategy{ public function charge();}//OK,抽象策略类就完成了// 支付宝策略类class AliCharge implements ChargeStrategy{ public function charge() 阅读全文
摘要:
<?php /** * 策略模式 * @author 桃谷六仙 * */ interface Math{ public function calc($op1,$op2);} class MathAdd implements Math{ public function calc($op1, $op2) 阅读全文
摘要:
//单例模式 /** 2 * 设计模式之单例模式 3 * $_instance必须声明为静态的私有变量 4 * 构造函数必须声明为私有,防止外部程序new类从而失去单例模式的意义 5 * getInstance()方法必须设置为公有的,必须调用此方法以返回实例的一个引用 6 * ::操作符只能访问静 阅读全文
摘要:
//工厂化模式class Factory {//创建一个基本的工厂类 static public function fac($id){//创建一个返回对象实例的静态方法 if(1 == $id) return new A(); elseif(2==$id) return new B(); elsei 阅读全文
摘要:
/** * 观察者模式 * @author: Fantasy * @date: 2017/02/17 */ /** * 事件产生类 * Class EventGenerator */abstract class EventGenerator{ private $ObServers = []; //增 阅读全文