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