1、 速度快了,快了2倍多
2、可以给参数设置类型声明了,并且可以强制返回类型 read more
1、 速度快了,快了2倍多
2、可以给参数设置类型声明了,并且可以强制返回类型 read more
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
/** * 单例模式 只产生一个实例化对象 */ class human{ // 定义静态属性 保存生产的对象 private static $object = NULL; // 构造方法私有化 禁止外部实例化对象 private function __construct(){ echo __METHOD__ . "<br>"; } /** * 定义一个静态方法 通过类内部返回实例化对象 * @return object */ public static function get_instance(){ // 判断保存的object静态属性对象是否是当前对象 if(!(self::$object instanceof self)){ // 如果不是 就实例化当前对象并保存到object静态属性 self::$object = new self(); } // 返回对象 return self::$object; } } // 通过静态成员方法访问 $h1 = human::get_instance(); $h2 = human::get_instance(); $h3 = human::get_instance(); var_dump($h1,$h2,$h3); |
返回结果:(只new了一次) read more
我们关系什么问题?
高并发:一个时间点,有多少个访问。日pv千万以上,算是一个高并发系统。
QPS:每秒钟请求或者查询的数量,或者每秒相应的请求(http请求)。
峰值每秒请求数(QPS) = (总PV数 * 80%)/ (6小时秒数 * 20% )
也就是说80%的访问量都集中在20%的时间里,2/8定律
并发连接数: QPS不等于并发连接数。QPS是每秒HTTP请求的数量,并发连接数是系统同时处理请求的数量。
如果想快速上手,laravel提供了一个只需几行命令就可以为我们生成一个登录注册功能的功能。 read more
超简单我们只需要一个函数即可:insertGetId
1 |
$insertid = DB::collection('hotels')->insertGetId($insertArray); |
其实你获得了一个对象
1 |
MongoDB\BSON\ObjectId |
怎么才能真正获取到id呢?
1 2 |
$insertid = DB::collection('hotels')->insertGetId($insertArray); $objectid = (string)$insertid; |
OK,完成,这篇太短了
发现一个错误:
1 |
ResponseError: value is not a valid float |
这是因为redis版本不同,写法不同,我用的是redis 2.0版本的写法写的,但现在装的是redis 3.0 read more