Dcloud课程7 单例模式一般用在什么场景

一、总结

一句话总结:连接数据库,这样就保证了和数据之间只有一个连接,从而能够不占用多余资源,这样就极大的减少了资源浪费,减少了mysql或者说服务器压力

1、单例模式的思路是怎样的?

如果有实例,就拿实例,没有就创建实例,不允许外部创建实例

16     public static function getInstance(){
17 if (!self::$_instance instanceof self) {
18 # code...
19 self::$_instance=new self;
20 }
21
22 return self::$_instance;
23 }

2、php函数默认参数用false好还是用null好?

其实都可以,感觉用null要好,语义,判断是否用false,参数是数据的话就是null

3、静态缓存数据技术中为什么会用到定时任务?

定时把数据的数据弄到缓存中,也就是静态文件中,这样就可以保证用户一直在文件中读取最新数据,而不用连接数据库。

二、单例模式一般用在什么场景

1、相关知识

单例模式的基本原则

1)构造函数需要标记为非public(防止外部使
用new操作符创建对象),单例类不能在其他类中实
例化,只能被其自身实例化。
2)拥有一个保存类的实例的静态成员变量
$_instance。
3)拥有一个访问这个实例的公告的静态方法

 

首页接口开发方法

1)读取数据库方式开发首页接口

2)读取缓存方式开发首页接口

优势:减少数据库压力

3)定时的读取缓存方式开发首页接口

首页接口的流程

 
 
 

2、代码

 <?php 

 class DB{
const HOST='localhost';
const USER='root';
const PASS='123';
const DATA='feifei';
static public $_instance; private function __construct(){
@mysql_connect(DB::HOST,DB::USER,DB::PASS);
mysql_set_charset('utf8');
mysql_select_db(DB::DATA);
} public static function getInstance(){
if (!self::$_instance instanceof self) {
# code...
self::$_instance=new self;
} return self::$_instance;
}
} // $model=new DB(); // $model=DB::getInstance(); // $sql="select * from user";
// $res=mysql_query($sql);
// while ($row=mysql_fetch_assoc($res)) {
// # code...
// var_dump($row);
// } ?>
 

最新文章

  1. Hadoop集群的启动顺序
  2. VB常用字符串操作函数
  3. 【C语言】C语言函数
  4. 移动开发框架,Hammer.js&amp;nbsp;移动设备触摸手势js库
  5. 适合于小团队产品迭代的APP测试流程
  6. 介绍 .NET Standard
  7. 记录linux系统下所有用户的操作信息
  8. MongoDB 2.6设置访问权限、设置用户
  9. [2016-06-28]dhclient命令的进程没杀死,导致不断在向DHCP服务器获取IP
  10. 从客户端(&amp;)中检测到有潜在危险的 Request.Path 值解决方案
  11. TreeView控件的CheckBox级联选中或取消
  12. 对C#泛型中的new()约束思考
  13. 网易云课堂_程序设计入门-C语言_第一周:简单的计算程序_1逆序的三位数
  14. Qt 之 qwt 和 qwtpolar
  15. .net Winfrom 僵尸窗口 的问题
  16. Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field
  17. ansible playbook批量改ssh配置文件,远程用户Permission denied
  18. [原创] debian 9.3 搭建Jira+Confluence+Bitbucket项目管理工具(四) -- 安装bitbucket 5.7.0
  19. Android Studio项目引入外部库注意事项(zxing)
  20. shell delete with line number

热门文章

  1. file---探测给定文件的类型
  2. CSUOJ 1635 Restaurant Ratings
  3. CSUOJ 1532 JuQueen
  4. SQL Server 为代码减负之存储过程
  5. OL记载Arcgis Server切片
  6. 不仅仅是MVC
  7. Java_Learn
  8. api h5 sdk 接入的说明
  9. HDU 5188 zhx and contest(带限制条件的 01背包)
  10. c#操作ElasticSearch5详解