原理:快速排序使用分治策略来把待排序数据序列分为两个子序列,具体步骤为:
1、从数列中挑出一个元素,称该元素为“基准”。
2、扫描一遍数列,将所有比“基准”小的元素排在基准前面,所有比“基准”大的元素排在基准后面。
3、通过递归,将各子序列划分为更小的序列,直到把小于基准值元素的子数列和大于基准值元素的子数列排序。
使用fastcgi_finish_request提高页面响应速度
当PHP运行在FastCGI模式时,可用fastcgi_finish_request可以提高请求的处理速度,让一些处理可以在页面生成完后再进行。
(PHP 5 >= 5.3.3, PHP 7)
fastcgi_finish_request ()
fastcgi_finish_request — 冲刷(flush)所有响应的数据给客户端
此函数冲刷(flush)所有响应的数据给客户端并结束请求。 这使得客户端结束连接后,需要大量时间运行的任务能够继续运行。
Linux: grep多个关键字
或操作:
grep -E '123|abc' filename // 找出文件(filename)中包含123或者包含abc的行 egrep '123|abc' filename // 用egrep同样可以实现 awk '/123|abc/' filename // awk 的实现方式
与操作:
grep pattern1 files | grep pattern2 //显示既匹配 pattern1 又匹配 pattern2 的行。
其他操作:
grep -i pattern files //不区分大小写地搜索。默认情况区分大小写, grep -l pattern files //只列出匹配的文件名, grep -L pattern files //列出不匹配的文件名, grep -w pattern files //只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’), grep -C number pattern files //匹配的上下文分别显示[number]行,
redis的持久化
redis的数据本身是保存在内存里面的,但是redis提供了持久化的功能,可以把数据保存在磁盘上,下一次启动redis服务的时候,会自动的把磁盘上的数据载入到内存里面。
当两种方式同时开启时,数据恢复Redis会优先选择AOF恢复。
redis安全问题
- 不放在公网,只在内网使用(局域网)
- 公网(防火墙规则)
- redis作为数据库是登录密码的存在(默认是关闭)。
Redis常用命令以及基础操作
redis是一个nosql的产品,支持的存储数据的类型(value)很多,常见的类型有
string 字符串、
link 链表、
hash(类似php里面关联数组)、
set一组数据的集合(无序性、唯一性、确定性)、
sorted set:对无序集合的一个升级,里面的集合元素需要按照一定的权值(按照某个规则来排序)来排序
所有redis也叫作结构化的nosql数据库。
php 函数使用可变数量的参数
在php5.6以上版本可以使用…语法实现:
参数列表可以包含 …标记,表示该函数接受可变数量的参数。参数将作为数组传递给给定变量。
Css3动画
python3基础之数据类型
数据类型
计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值。但是,计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。在Python中,能够直接处理的数据类型有以下几种:整数、浮点数、字符串、布尔值、空值、变量
centos7下安装python3,与python2共存
centos系统本身默认安装有python2.x,可通过 python –V 或 python –version 查看系统自带的python版本。有一些系统命令时需要用到python2,所以python2不能卸载。