摘要: linux 目录分类 CentOS的目录大体上可分为四类:管理类、用户类、应用程序类、信息类文件目录。 管理类目录: 0. /: 根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中 1. /boot linux的内核及引导系统 阅读全文
posted @ 2019-05-08 08:47 南山道士 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 文章目录1. C语言概述1.1 什么是C语言1.2 计算机介绍1.2.1 计算机结构组成1.2.2 计算机系统组成1.2.3 程序和指令1.3 语言发展历程1.3.1 机器语言1.3.2 汇编语言和编译器1.3.3 高级语言1.3.4 语言的层次1.3.5 语言进化史1.4 为什么要学习C语言1.4 阅读全文
posted @ 2019-05-08 01:01 南山道士 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 前言——可复用面向对象软件的基础设计模式(D... 阅读全文
posted @ 2019-05-07 15:50 南山道士 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 数据结构与算法 原文:http://www.cnblogs.com/skywang12345/p/3603935.html 数据结构和算法的目录表,按照C/C++/Java划分,方便查阅。若文章有纰漏或错误,欢迎指正。谢谢! 结构 c c++ java 线性结构 1.数组,单链表与双链表 2.Lin 阅读全文
posted @ 2019-05-07 10:48 南山道士 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 文章目录前言一、乐观锁与悲观锁1.1 乐观锁1.2 悲观锁1.3 如何实现乐观锁/悲观锁1.4 乐观锁和悲观锁选择标准二、共享锁和排它锁2.1 共享锁(读锁)2.2 排它锁(写锁)三、加锁的粒度3.1 表锁3.2 页锁3.3 行锁四、事务4.1 事务4.1.1 用于保证数据库的一致性4.1.2 用于 阅读全文
posted @ 2019-05-07 01:03 南山道士 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 文章目录一、nginx介绍1. nginx历史2. nginx网络模型3. nginx 特性4.nginx 优点5.压测工具ab的使用二、编译安装过程优化1. 修改配置文件2. 为特定的CPU指定CPU类型编译优化三、隐藏版本号四、利用TCMalloc优化Nginx的性能1. 安装libunwind 阅读全文
posted @ 2019-05-06 23:06 南山道士 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 文章目录一、安装依赖库二、安装nginx所需要的库文件三、安装PHP依赖的库文件四、安装库文件五、安装php六、将php-fpm **作为服务运行**七、编译Nginx 一、安装依赖库 为了省事把所需要的库文件全都安装上,可以使用rpm包安装,也可以用yum命令安装, yum -y install 阅读全文
posted @ 2019-05-06 21:48 南山道士 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 文章目录一、安装依赖库二、安装部署apache三、安装php相关模块四、安装PHP五、修改apache配置文件 一、安装依赖库 为了省事把所需要的库文件全都安装上,可以使用rpm包安装,也可以用yum命令安装, yum -y install gcc gcc-c++ autoconf automake 阅读全文
posted @ 2019-05-06 21:35 南山道士 阅读(69) 评论(0) 推荐(0) 编辑
摘要: 文章目录前言一、Socket通信模型:二、不同角度的I/O模型1. 阻塞与非阻塞(调用者角度)2. 异步与同步(被调用者角度)3. 总结同步和异步的区别三、复用型IO调用四、Linux中五种I/O模型五、Http中的I/O模型1. profork:多进程模型。2. worker:多进程模型。3. e 阅读全文
posted @ 2019-05-06 19:28 南山道士 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一章 概述第二章 五种IO 网络模型1. 阻塞IO(blocking I/O)2. 非阻塞IO(nonblocking I/O)3. 多路复用IO(I/O multiplexing (select、poll、epoll))4. 信号驱动IO(signal driven I/O (SIGIO 阅读全文
posted @ 2019-05-06 19:08 南山道士 阅读(79) 评论(0) 推荐(0) 编辑
摘要: 文章目录一、Nginx架构二、nginx进程模型2.1 多进程模型2.2 多进程模型的好处2.3 master与worker功能2.3.1 master进程主要用来管理worker进程,具体包括如下4个主要功能:2.3.2 woker进程主要用来处理基本的网络事件:三、进程控制方式3.1 手动发送信 阅读全文
posted @ 2019-05-06 18:36 南山道士 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 文章目录前言一、死锁初窥1、为何会发生死锁?2、死锁的定义与必要条件二、应对死锁1、哲学家就餐问题2、死锁的应对方法3、银行家算法4、解决:哲学家就餐问题 前言 我们都见过交通阻塞,一大堆汽车因为争夺行路权,互不相让而造成阻塞,又或者因为车辆发生故障抛锚或两辆车相撞而造成道路阻塞。在这种情况下,所有 阅读全文
posted @ 2019-05-06 18:06 南山道士 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 文章目录前言一、线程基础1. 线程概念2 线程管理3 线程模型4 多线程的关系二、线程同步1 同步的原因和目的2 线程同步必知概念3 线程同步方式: 前言 我们都知道,进程是运转中的程序,是为了在CPU上实现多道编程而发明的一个概念。但是进程在一个时间只能干一件事情,如果想要同时干两件或者多件事情, 阅读全文
posted @ 2019-05-06 17:32 南山道士 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 文章目录一、定义(Process)二、PCB 进程控制块(Process Control Block)1. 又称进程描述符,进程属性,是操作系统用于管理控制进程的一个专门的数据结构,记录进程的各种属性。2. PCB是系统感知进程存在的唯一标志,进程与PCB是一一对应的。3. 进程表:所有进程的PCB 阅读全文
posted @ 2019-05-06 16:35 南山道士 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 文章目录1.简单概念2. 为什么要用异步3. 怎么实现异步4. 案例: 1.简单概念 异步:一种通讯方式,对设备需求简单。我们的PC机提供的标准通信接口都是异步的。 2. 为什么要用异步 由于php本身没有异步执行的机制,有时一些业务并不需要我们等到所有程序执行完再返回结果,这时用户体验就会比较不友 阅读全文
posted @ 2019-05-06 16:03 南山道士 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 文章目录1. 简单概念2. 什么是TCP/IP、UDP3. Socket在哪里呢?4. Socket是什么呢?5. socket相关函数: 1. 简单概念 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。 建立网络通信连接至少要一对端口号(socket)。s 阅读全文
posted @ 2019-05-06 15:55 南山道士 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一章 什么是Mysql第二章 操作系统优化1. 内存准备2. 内核准备3. 网卡准备4. 硬盘准备第三章 安装Mysql1、安装前知识准备2、安装准备3 、编译安装配置配置mysql引擎配置字符集配置端口号配置用户名其他参数:mysql扩展引擎安装mysql插件安装以及路径配置4. 编译安 阅读全文
posted @ 2019-05-06 14:19 南山道士 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 这组 OAuth 系列教程,第一篇介绍了基本概念,第二篇介绍了获取令牌的四种方式,今天演示一个实例,如何通过 OAuth 获取 API 数据。 很多网站登录时,允许使用第三方网站的身份,这称为"第三方登录"。下面就以 GitHub 为例,写一个最简单的应用,演示第三方登录。文章目录一、第三方登录的原 阅读全文
posted @ 2019-05-06 09:49 南山道士 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 上一篇文章介绍了 OAuth 2.0 是一种... 阅读全文
posted @ 2019-05-06 08:41 南山道士 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一章 OAuth 2.0是什么第二... 阅读全文
posted @ 2019-05-06 08:29 南山道士 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一章 OAuth 是什么第二章 应... 阅读全文
posted @ 2019-05-06 08:18 南山道士 阅读(69) 评论(0) 推荐(0) 编辑
摘要: 第一章 背景 在与 APP 的 api 通讯中,经常会将敏感数据进行加密传输,然后再解密进行处理。在项目开发的时候,也会封装方法去对数据进行加解密。接下来我们通过php的laravel框架来实现加解密,下面是我通过 middleware 和 Response::macro 实现加解密的方案。 第二章 阅读全文
posted @ 2019-05-06 01:02 南山道士 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一 知识结构第二 从架构看缓存2.1 布局缓存的目的2.2 合理使用缓存2.3 哪些位置适合做缓存第三章 文件类缓存3.1 CDN缓存原理和介绍(涉及到cdn回源,缓存失效+主动推送更新文件)3.1.1 特点:3.1.2 chrome浏览器的dns缓存设置3.1.3 cdn缓存原理3.2 阅读全文
posted @ 2019-05-05 02:35 南山道士 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一 安装第二 配置第三 快速使用1. 创建tcp服务器2. 创建udp服务器3. 创建web服务器4. 创建WebSocket服务器4.1 什么是WebSocket?4.2 WebSocket特点:4.3 WebSocket 工作流程4.4 长连接的关闭Swoole 异步操作5. 定时器6 阅读全文
posted @ 2019-05-05 01:58 南山道士 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 文章目录一 redis与memcache异同二 redis 安装八步曲三 Redis key的常规操作命令1. 添加2. 删除3. 修改4. 查询5. 移动database (注意: 一个redis进程,默认打开16个数据库,从0到15编号,如果想打开更多数据库,可以从配置文件修改)6. 其他四 S 阅读全文
posted @ 2019-05-05 01:42 南山道士 阅读(66) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一章 sqlplus 连接与登录1. 先连接,再登陆2.系统管理员登陆3.激活普通用户4.启动实例实例5.关闭实例第二章 sqlplus的用法详解1.sqlplus的缓冲区2.Ed 用外部编辑器编辑缓冲区3.缓冲区的内容保存到外部文件4.读取外部文件到缓冲区5.sqlplus 中使用变量第 阅读全文
posted @ 2019-05-05 01:25 南山道士 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一章 memcache的使用1.1 添加key1.2 删除第二章 编译 PHP 及 memcached 扩展1. 编译 apache+php第三章 memcached 实战1. 缓存数据库查询结果2. 中继 MySQL 主从延迟数据 第一章 memcache的使用 1.1 添加key ad 阅读全文
posted @ 2019-05-05 01:12 南山道士 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一章 信号的概念信号的机制与信号相关的事件和状态信号的编号信号4要素Linux常规信号一览表第二章 信号的产生终端按键产生信号硬件异常产生信号kill函数/命令产生信号raise和abort函数软件条件产生信号setitimer函数第三章 信号集操作函数信号集设定sigprocmask函数 阅读全文
posted @ 2019-05-04 23:38 南山道士 阅读(69) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一章 进程间通信(IPC)第二章 管道第三章 FIFO 命名管道第四章第五章 存储映射IO第六章 套接字 稳定 第一章 进程间通信(IPC) ​ Linux环境下,进程地址空间相互独立,每个进程各自有不同的用户地址空间。任何一个进程的全局变量在另一个进程中都看不到,所以进程和进程之间不能相 阅读全文
posted @ 2019-05-04 20:55 南山道士 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一章 进程相关概念第二章 程序和进程第三章 并发第四章 单道程序设计第五章 多道程序设计第六章 CPU和MMU第七章 进程控制块PCB第七章 进程控制块PCB第八章 进程状态第八章 进程状态第九章 环境变量第九章 环境变量第十章 进程状态函数第十一章 进程共享第十二章 回收子进程第十三章 阅读全文
posted @ 2019-05-04 18:21 南山道士 阅读(75) 评论(0) 推荐(0) 编辑
摘要: 文章目录一、mysql调优1.1 为什么要测试1.2 测试指标?1.3 用什么工具测试?1.4 mysqlslap测试1.5 sysbench 测试1.5.1 测试CPU性能1.5.2 测试IO性能1.5.3 测试事务性能1.5.4 测试事务实例1.6 tpcc测试1.6.1 创建数据库/表1.6. 阅读全文
posted @ 2019-05-04 14:01 南山道士 阅读(69) 评论(0) 推荐(0) 编辑
摘要: 文章目录第一章:laravel安装1. 安装方法一:homestead 虚拟机2. 安装方法二:composer安装第二章:laravel目录结构介绍第三章:laravel路由1. 基本路由 Route:2. 路由参数:3. 路由命名:4. 路由组5. 路由模型绑定6. 回退路由7. 访问控制8. 阅读全文
posted @ 2018-12-27 00:10 南山道士 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 文章目录1.实验预习:tcp协议2.SOCKET 编程3.多进程编程4 I/O复用5. 信号通信以及守护进程 1.实验预习:tcp协议 TCP协议的创建: 创建流程:1.客户端主动调用connect发送SYN分节;2.服务器端必须回复一个ACK分节来确认客户端的SYN分节,并发送一个SYN分节给客 阅读全文
posted @ 2018-12-08 19:09 南山道士 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 本节所讲内容:实战:源码编译安装apache及调优技巧 实战环境:生产环境中,部署了apache之后,我们应该从安全还是性能角度,在apache服务上线之前,对其做诸多的优化调试才行。 Apache实验环境:ap... 阅读全文
posted @ 2016-10-13 16:50 南山道士 阅读(49) 评论(0) 推荐(0) 编辑