自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

达斯熊本的博客

you don't know the power of the darkside

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

原创 动态规划

动态规划(dynamic programing)运筹学的一个分支。是求解决策过程(decision process)最优的数学方法;基于一个递推公式以及一个或多个初始状态当前字问题的解由上一个子问题的解推出。典型的爬楼梯问题有一座高度是10级台阶的楼梯,从下往上走,每跨一步只能向上1级或者2级台阶。求出一共有多少种走法。talk is cheap show me the c...

2019-03-21 18:02:46 138

原创 require和include

require和include区别加载机制:require引入就加载include用到才加载,可以放在流程控制语句2.引用文件报错:require致命错误include warning多次使用require/include 报致命错误:函数、类名、常量重复定义require/include_once则不会;表示已经包含过的文件不会在包含...

2019-03-21 17:43:12 526

原创 并发和并行

并发和并行最开始都是操作系统的概念:表示的是CPU执行多个任务的方式。并发concurrent在操作系统中,是指一个时间段由几个程序处于已启动运行到运行完毕之间,且几个程序都是在同一个物理机上。并行paralled当系统有一个以上CPU时,当一个CPU执行一个进程时,另一个CPU可以执行另一个程序,两个程序互不抢占CPU资源,可以同时进行。区别并发指的是多个事情,在同一时间段内同时...

2019-03-21 16:15:34 131

转载 浅谈Linux五种IO模型

Linux五种IO模型阻塞IO非阻塞IO信号驱动IO异步IOIO复用阻塞IO最简单的IO模型,进程或线程等待某个条件,如果条件不满足就一直等待下去,条件满足才进行下一步操作。非阻塞IO应用程序与内核交互,未达目的之前,不再一味的等待,而是直接返回,然后通过轮询的方式不停的去询问内核数据有没有准备好;如果准备好了,就把数据拷贝到用户空间。信号驱动IO进程读取文件,某个soc...

2019-03-21 15:53:31 167

原创 MySQL事务隔离级别

在SQL标准中定义了四种隔离级别,每一种级别都规定了一个事务中所做的修改,哪些在事物内和事务间是可见的,哪些是不可见的。较低级别的隔离通常可以执行更高的并发,系统开销也更低。...

2018-08-15 20:57:54 143

原创 LRU算法(php实现)

1.原理LRU(least recently used, 最近最少使用),LRU算法的设计原则是:如果一个 数据在最近一段时间没有被访问到,那么在将来它被访问的可能性也很小。(最开始了解这个算法的时候一直不明白为什么要淘汰最近的数据,而不是淘汰最远的数据,看到设计原则的时候才恍然大悟)   值得一提的是redis采用拉链法解决哈希碰撞,采用的头插法将最新的数据存储到链表...

2018-07-10 17:07:28 10880 2

转载 Linux安装php扩展memcache

转自https://www.centos.bz/2011/11/linux-install-php-memcache/php扩展memcache的作用是为了支持memcached数据库缓存服务器,下面是安装方法。 1、下载并解压memcache文件wget -c http://pecl.php.net/get/memcache-3.0.6.tgztar xzvf memcache-3....

2018-06-12 11:00:13 614

原创 thinkphp部署到Nginx

server { listen 80; server_name ly.snail.com; index index.php index.html; root /var/www/html/snail; location ~ \.php$ { try_files $uri =404; fastcgi_split_path_in...

2018-06-11 15:34:09 6341

转载 redis中的bitmap

bigmap是什么通过一个bit位来表示一个某个元素对应的值或者状态,其中key就是对应元素的本身。8bit = 1byte为 一字节,可以极大的节省空间redis中的bitmap setbit命令指令 setbit key offset value设置或清空key的value(字符串)在offset处的bit值(只能是0或1)空间占用、以及第一次分配所需的时间offs...

2018-05-24 14:50:15 728 1

原创 php zval结构体

typedef struct zavl_struct{ zval_value value; zend_uint ref_count; zend_uchar type; zend_uchar is_ref;}写时复制$a = 1;$b = $a;$b += 5;复制一个和$b所指向zval一样的zavl;将$b所指的zval的ref_co...

2018-05-24 14:46:20 864 1

原创 MyISAM和InnoDB的区别

MyISAM和InnoDB的区别InnoDB支持“自适应哈希索引”,当InnoDB注意到某些索引值被使用得非常频繁时,它会在内存中基于B-Tree索引之上再创建一个哈希索引;InnoDB不保存表的具体行数,执行select count(*)需要进行全表扫描。而MyISAM会用一个变量保存整个表的行数,但是mysql在执行sql语句的时候,没有用到索引,不能确定扫描范围的时候,也会进行全表扫...

2018-05-22 17:32:50 502

原创 判断一个链表是否有环

设置两个指针(fast,slow),初始值都指向头,slow每次前进一步,fast每次前进两步,如果链表存在环,则fast必定比slow先进入环,两个指针必定相遇。(如果fast先行头到尾部为NULL,则无环链表)。代码bool isExitLoop(slist *head){ slist *slow = head, *fast = head; while(fast &...

2018-05-17 15:51:55 153

原创 Redis底层数据结构

字符串 SDS 数据结构 每个 sds.h/sdshdr 结构表示一个 SDS 值:struct sdshdr { // 记录 buf 数组中已使用字节的数量 // 等于 SDS 所保存字符串的长度 int len; // 记录 buf 数组中未使用字节的数量 int free; // 字节数组,用于保存字符串 char buf[...

2018-05-17 14:46:16 665

转载 PHP非阻塞实现方法

转自https://www.awaimai.com/660.html为让 PHP 在后端处理长时间任务时不阻塞,快速响应页面请求,可以有如下措施:1 使用 fastcgi_finish_request() 如果 PHP 与 Web 服务器使用了PHP-FPM(FastCGI 进程管理器),那通过fastcgi_finish_request()函数能马上结束会话,而 PHP 线程可以继续在...

2018-05-17 14:41:30 1749

原创 Vagrant安装配置

Vagrant安装官方下载打包好的安装包进行安装https://www.vagrantup.com/downloads.html 安装完成后在命令行输入,显示版本号表示安装完成。$ vagrant -vVagrant 1.9.1安装VirtualBox https://www.virtualbox.org/wiki/DownloadsVagrant配置...

2018-05-17 14:36:52 377

空空如也

空空如也

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

TA关注的人

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