自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

QinDaBao_的博客

点滴做起····

  • 博客(41)
  • 收藏
  • 关注

原创 RabbitMQ教程

一、RabbitMQ简介消息系统允许软件应用相互连接和扩展.这些应用可以相互链接起来组成一个更大的应用,或者将用户设备和数据进行连接.消息系统通过将消息的发送和接收分离来实现应用程序的异步和解偶.或许你正在考虑进行数据投递,非阻塞操作或推送通知。或许你想要实现发布/订阅,异步处理,或者工作队列。所有这些都属于消息系统的模式。RabbitMQ是一个消息代理 - 一个消息系统的媒介。它可以.........

2022-06-07 10:19:43 280

原创 Linux永久删除文件恢复

Linux误删文件恢复

2022-06-07 10:17:07 954 1

原创 最全mysql语句大全

1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开...

2019-08-20 16:23:06 2617

原创 50个提高PHP程序运行效率的方法

用单引号代替双引号来包含字符串,这样做会更快一些。因为 PHP 会在双引号包围的 字符串中搜寻变量,单引号则不会,注意:只有 echo 能这么做,它是一种可以把多个字符 串当作参数的“函数”(译注:PHP 手册中说 echo 是语言结构,不是真正的函数,故把函数 加上了双引号)。 如果能将类的方法定义成 static,就尽量定义成 static,它的速度会提升将近 4 倍。 $row[’id’...

2019-07-08 10:44:51 390

原创 Thinkphp 5.1和Thinkphp 5.0的区别

ThinkPHP5.1在5.0的基础上对底层架构做了进一步的改进,引入新特性,并提升版本要求。另外一个事实是,5.1版本看起来对开发者更加友好,表现在目录结构更直观、调试输出更直观和代码提示更直观。ThinkPHP5.1运行环境要求PHP5.6+,虽然不支持5.0的无缝升级,但升级过程并不复杂(请参考升级指导),5.1.*版本基本上可以支持无缝升级。主要新特性:(V5.1.27版本开始,...

2019-06-16 09:41:47 9789

原创 Session 的运行机制,大型网站中Session方面应注意什么

运行机制: 客户端将session id传递到服务器,服务器根据session id找到对应的文件,读取的时候对文件内容进行反序列化就得到session的值,保存的时候先序列化再写入。大型网站中session方面应注意什么: 1、Session文件过多,消耗IO性能: session在大访问量网站上确...

2019-06-12 18:30:05 428

原创 PHP登录系统安全建议整理

密码要进行加密(自定义加密方式)。 登录表单的名称不要跟数据库字段一样,以免暴漏表字段。 用户表的表名、字段名、密码尽量用不容易被猜到的。 要使用验证码验证登陆,以防止暴力破解。 验证提交的数据是不是来自本网站。 登录后台处理代码数据库部分使用预处理,做好过滤,防止sql注入。 登录失败次数控制 注册时,时间间隔机制,例如1...

2019-06-12 18:16:33 653 2

原创 thinkPHP防止SQL注入的建议

查询条件尽量使用数组方式,这是更为安全的方式; 如果不得已必须使用字符串查询条件,使用预处理机制(3.1版本新增特性); 开启数据字段类型验证,可以对数值数据类型做强制转换;(3.1版本开始已经强制进行字段类型验证了) 使用自动验证和自动完成机制进行针对应用的自定; 对所有公共的操作方法做必要的安全检查,防止用户通过URL直接调用; 不要缓存需要用户认证的页面; 对用户的上传文件,做必...

2019-06-12 15:44:35 2473

原创 Composer安装Yii2,希望对安装不成功的朋友有所帮助

1.先测试一下composer安装是否成功:composer -V出现下面的composer版本信息说明composer全局安装已经顺利完成!Composer version 1.6.3 2018-01-31 16:28:172.将Composer更新站点替换为中国全量镜像(很重要,此步没做以后的都不会成功)composer config -g repo.packagis...

2019-06-11 17:13:26 2814

原创 PHP 加密 / 解密接口

//加密解密方法 function 方法名($string,$operation){ if($string){ $key = '自定义key'; $key=md5($key); $key_length=strlen($key); $string=$operation=='D'?base64_d...

2019-05-29 11:49:14 396

原创 PHP数字金额转中文

function num_to_rmb($num){ $c1 = "零壹贰叁肆伍陆柒捌玖"; $c2 = "分角元拾佰仟万拾佰仟亿"; //精确到分后面就不要了,所以只留两个小数位 $num = round($num,2); //将数字转化为整数 $num = $num * 100; ...

2019-05-29 11:41:33 214

原创 tp5分配计费统计小例

前台表格:<div class="table-container" style="width: 80%;text-align: center;margin-left: 8%;"> <h2 style="margin: 15px 0;">首电分配计费统计表</h2> <table clas...

2019-05-29 11:32:41 339

原创 主从数据库配置(复制)

※ 前提:主从数据库版本一致!!!主服务器部分:1.修改数据库配置#vi /etc/mysql/my.cnf [mysqld] log-bin=mysql-bin #[必须]启用二进制日志 server-id=1 #[必须]服务器唯一ID,默认是1,一般取IP最后一段2.检查mysql是否允许连接 这一步...

2019-05-20 18:24:05 342

原创 crontab相关命令

一、/etc/crontab、/etc/cron.deny 、 /etc/cron.allow文件介绍[root@izwz9g0mp7j4yo1wjp5xaiz ~]# cat /etc/crontab SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=rootHOME=/# For details see man 4...

2019-04-28 09:38:48 263

原创 Js随机不重复小例

<script> var arr = [1,2,3,5,6,7,8,9,10,12,13,14,15] function roa(arr,c) //arr为可能出现的元素集合 { var temp=new Array(); //temp存放生成的随机数组 for (i=0;i<c;i++){ ...

2019-04-11 09:50:35 422

原创 使用Composer的正确姿势

一、拉取组件是不是很慢?换源(中国全量镜像)修改 composer 的全局配置文件打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:composer config -g repo.packagist composer https://packagist.phpcomposer.com镜像原理一般情况下,安装包的数据(主要是 zip ...

2019-03-20 10:53:03 1012

原创 Composer常用概念解析以及如何使用Composer(附composer文档)

packagistpackagist是 Composer 的主要资源库。 一个 Composer 的库基本上是一个包的源:记录了可以得到包的地方。Packagist 的目标是成为大家使用库资源的中央存储平台。这意味着你可以 require 那里的任何包。当你访问 packagist website (packagist.org),你可以浏览和搜索资源包。composer.json文件...

2019-03-20 10:52:32 410

原创 Composer的了解以及安装

介绍Composer 不是一个包管理器。是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。这种想法并不新鲜,Composer 受到了node's npm和ruby's bundler的强烈启发。而当时 PHP 下并没有类似的...

2019-03-19 17:08:44 185

原创 索引优化

巧妙的使用 Explain看一条 SQL 语句的性能,可以使用 explain 关键字查看语句性能,这里说一下其中的 type 字段的部分含义:all,即全表扫描,说明这个 SQL 语句没有使用到索引,有可能是表本身没有创建索引,也可能是因为 SQL 语句导致没有使用索引 range,说明使用的是有范围的索引扫描,性能优于 index index,这里说明使用了索引,这种情况下,如果 ...

2019-03-19 17:05:23 203

原创 数据库错误日志

1.进入 mysql 安装目录进入 data 目录(该目录存储的是数据库的数据)cd /usr/local/mysql/data2.查找下包含err的日志文件root@123:/usr/local/mysql/data# lsauto.cnf ib_logfile0 julyedu mysql-bin.000006 mysql-bin.0...

2019-03-19 17:04:11 1290

原创 数据库导入和导出

一、导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):1、导出数据和表结构: mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql #/usr/local/mysql/bin/ mysqldump -uroot -p abc > abc.sql敲回车后会提示输入密码2、只导出表结构mysqldump ...

2019-03-19 17:02:44 3001 2

原创 单列索引和多列索引

1.单列索引所有的MySQL列类型能被索引。在相关的列上的使用索引是改进SELECT操作性能的最好方法。一个表最多可有16个索引。最大索引长度是256个字节,尽管这可以在编译MySQL时被改变。对于CHAR和VARCHAR列,你可以索引列的前缀。这更快并且比索引整个列需要较少的磁盘空间。在CREATE TABLE语句中索引列前缀的语法看起来像这样: KEY index_n...

2019-03-19 17:01:45 2414 2

原创 B-tree索引和hash索引的区别

hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。可 能很多人又有疑问了,既然 Hash 索引的效率要比 B-Tree 高很多,为什么大家不都用 Hash 索引而还要使用 B-Tree 索引呢?任何事物都是有两面性的,Hash 索引...

2019-03-19 16:58:58 404

原创 索引的分类以及如果创建索引

从数据结构角度1、B+树索引(O(log(n)))关于B+树索引,可以参考 MySQL索引背后的数据结构及算法原理2、hash索引a 仅仅能满足"=","IN"和"<=>"查询,不能使用范围查询b 其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-T...

2019-03-19 16:57:31 620

原创 了解索引

举例我们通过一个简单的例子来开始教程,解释为什么我们需要数据库索引。假设我们有一个数据库表 Employee, 这个表有三个字段(列)分别是 Employee_Name、Employee_Age 和Employee_Address。假设表Employee 有上千行数据。现在假设我们要从这个表中查找出所有名字是‘Jesus’的雇员信息。我们决定使用下面的查询语句:SELECT * FR...

2019-03-19 16:53:31 203

原创 文件管理

一.文件传送和压缩压缩tar zcvf img.tar.gz Image/解压tar zxvf img.tar.gz把服务器文件下载到本地scp ceshi@123,45,67,89:/tmp/img.tar.gz /Users/you/Desktop/上传本地文件到服务器scp /path/local_filename username@server...

2019-03-19 16:44:10 200

原创 单机事务

事务简介事物的本质 => 锁和并发的结合体优势:容易理解劣势:性能一般容易理解的模型性能不好,性能好的模型都不容易理解。ACID保证事务完整性bob给smith转1000元钱,要么钱在bob这,要么在smith这,不会让其他线程看到bob和smith的钱都为0的情况。事务 - 单个事务单元建立一个基于GMT_Modified的索引读一行记录写一行记录,同...

2019-03-19 16:42:45 422

原创 MyISAM与InnoDB区别

什么是MyISAM?MyISAM是MySQL关系数据库管理系统的默认储存引擎(5.5之前)。这种MySQL表存储结构从旧的ISAM代码扩展 出许多有用的功能。在新版本的MySQL中,InnoDB引擎由于其对事务,参照完整性,以及更高的并发性等优点开始广泛的取代MyISAM。每一个MyISAM表都对应于硬盘上的三个文件。这三个文件有一样的文件名,但是有不同的扩展名以指示其类型用途:.frm文件...

2019-03-08 16:03:39 211

原创 乐观锁和悲观锁

数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。无论是悲观锁还是乐观锁,都是人们定义出来的概念,可以认为是一种思想。其实不仅仅是数据库系统中有乐观锁和悲观锁的概念,像memcache、hibernate、tair等都有类似的概念。...

2019-03-08 16:01:36 214

原创 程序和进程

程序和进程程序是为了完成某种任务而设计的软件,比如OpenOffice是程序。什么是进程呢?进程就是运行中的程序。一个运行着的程序,可能有多个进程。 比如apache服务器,许多用户同时请求httpd服务,apache服务器将会创建有多个httpd进程来对其进行服务。进程分类进程一般分为交互进程、批处理进程和守护进程三类。值得一提的是守护进程总是活跃的,一般是后台运行,守护进程...

2019-03-08 15:56:10 357

原创 Apache多站点配置

DNS解析windows在C:\Windows\System32\drivers\etc\hosts文件中:192.168.33.10 martist.cnlinux/unix在 /etc/hosts文件中:127.0.0.1 martist.cn站点配置apache的配置文件都分割成目录存在,更易于管理和理解。现在我们敲命令,跳转到apache的虚拟站点配...

2019-03-08 15:53:19 299

原创 Ubuntu lnmp环境搭建

ubuntu版本Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-86-generic x86_64)php 7 mysql 5.7安装 Php 7.1首先用SSH连接到你的服务器,Windows 用户建议使用 SecureCRT 来连接,这是一个收费软件,请自行搜索 破解版 。1. 准备安装 Php7.1 之前,要先安装language-pac...

2019-03-08 15:51:36 432

原创 Centos7 lnmp环境搭建

1 安装EPEL源yum -y install epel-release.noarchorsudo yum install epel-release2 手动进行升级所有包,改变软件设置和系统设置,系统版本内核都升级yum -y update升级所有包,不改变软件设置和系统设置,系统版本升级,内核不改变yum -y upgrade出现remi c...

2019-03-08 15:49:48 1022

原创 Nginx四个基本功能

Nginx能做什么呢?1.反向代理2.负载均衡3.HTTP服务器(包含动静分离)4.正向代理以上就是我了解到的Nginx在不依赖第三方模块能处理的事情,下面详细说明每种功能怎么做1.反向代理反向代理应该是Nginx做的最多的一件事了,什么是反向代理呢,以下是百度百科的说法:反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将...

2019-03-08 15:45:10 349

原创 Linux常用命令

这里列举一些在操作linux系统是常用的命令:1.频率最高:ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all)mkdir 创建目录 -p 创建目录,若无父目录,则创建p(parent) cd 切换目录touch 创建空文件echo 创建带有内容的文件。cat ...

2019-03-08 15:39:10 272

原创 HTTP详解

1.HTTP简介:HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的...

2019-03-08 15:27:44 217

原创 PHP内核了解:生命周期及运行模式

PHP运行模式 1)CGI(通用网关接口 / Common Gateway Interface) 2)FastCGI(常驻型CGI / Long-Live CGI) 3)CLI(命令行运行 / Command Line Interface) 4)Web模块模式(Apache等Web服务器运行的模式)5)ISAPI(Internet Server Application Program...

2019-03-08 15:07:02 359

原创 开发中较为实用的PHP“场景函数”(持续更新,欢迎补充)

1.隐藏客户部分手机号码:$phone = '13812345678';$preg = "/(1\d{1,2})\d\d(\d{0,2})/";$re = "\$1****\$3";echo preg_replace($preg,$re,$phone); 结果为: 138****4857 常用正则表达式:用户名 /^[a-z0-9_-]{3...

2019-02-21 17:51:00 243

原创 AOF持久化

什么是AOF持久化?AOF持久化,即通过一个append only file来记录对数据库的写操作命令,从而只要重新执行这些命令就可以还原数据库。 AOF持久化可以保证数据的完整性AOF持久化的步骤?1:命令追加步骤 首先服务器将对数据库的写操作命令放入AOF缓冲区中,并通过周期函数来检查是否需要将缓冲区内的内容写入AOF文件中(一般有三种策略:always,everysecond...

2018-04-10 16:50:47 139

原创 Nginx简介及配置文件详解

一 Nginx简介 Nginx是一款开源代码的高性能HTTP服务器和反向代理服务器,同时支持IMAP/POP3/SMTP代理服务 Nginx由内核和模块组成,完成工作是通过查找配置文件将客户端请求映射到一个location block(location是用于URL 匹配的命令),location配置的命令会启动不同模块完成工作。 Nginx模块分为核心模块,基础模块...

2018-03-30 18:19:05 1553

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除