自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

日有寸进

认真写每一篇博客

原创 《Linux高性能服务器编程》阅读笔记 之(二)IP 协议详解

目录 IP服务的特点 IPv4 头部结构 介绍 使用 tcpdump 观察 IPv4 头部结构 IP 分片 介绍 使用 tcpdump 观察 IP 分片 IP路由 IP 模块工作流程 路由机制 IP转发 重定向 ICPM 重定向报文 IPv6 头部结构 IPv6 ...

2019-10-14 16:06:21

阅读数 14

评论数 0

原创 《Linux高性能服务器编程》阅读笔记 之(一)TCP/IP 协议族

目录 TCP/IP 协议族体系架构以及主要协议 数据链路层 网络层 传输层 应用层 封装 分用 ARP 协议工作原理 以太网ARP请求/应答报文详解 ARP 高速缓存的查看和修改 DNS 工作原理 DNS 查询和应答报文详解 Linux 下访问 DNS 服务 使用 ...

2019-10-11 09:41:43

阅读数 94

评论数 0

原创 Nginx 配置 location 模块实现路由(代理转发、重定向)功能

前置文章: Linux(CentOS7) 下 Nginx1.15.8 安装步骤 Nginx 的配置文件 nginx.conf 我们访问一个网址,服务器返回对应的资源。那么一个网址是如何对应一个资源的呢? 用 Nginx 可以很好地帮我们实现路由功能,我们所有需要做的就是配置好 locatio...

2019-09-30 11:35:14

阅读数 50

评论数 0

原创 Nginx 日志配置、日志切割

Nginx 日志配置设置 access.log语法log_format自定义格式设置error_log语法日志切割 前置文章:Nginx 的配置文件 nginx.conf Nginx日志对于统计、系统服务排错很有用。 Nginx日志主要分为两种:access_log(访问日志)和error_log...

2019-09-26 11:00:57

阅读数 26

评论数 0

原创 面试官:既然你用过MySQL,那你知道什么是慢查询吗?怎么分析?

MySQL中的慢查询什么是慢查询慢查询配置慢查询基本配置慢查询解读慢查询分析mysqldumpslowpt_query_digest 什么是慢查询 慢查询日志,顾名思义,就是查询慢的日志,是指mysql记录所有执行超过long_query_time参数设定的时间阈值的SQL语句的日志。该日志能...

2019-09-25 10:00:36

阅读数 53

评论数 0

原创 Openresty 的安装

如果有依赖没下载,可以参考 Linux(CentOS7) 下 Nginx1.15.8 安装步骤 前面的依赖下载。 下载解压源码: wget https://openresty.org/download/openresty-1.15.8.1.tar.gz tar -zxvf openresty-1...

2019-10-18 22:53:11

阅读数 1

评论数 0

原创 Nginx 负载均衡 —— upstream 配置

Nginx 负载均衡 —— upstream 配置语法格式轮询(默认)weightip_hash代理时的负载使用 语法格式 upstream 负载名 { [ip_hash;] server ip:port [weight=数字] [down]; server ip:port...

2019-10-18 22:06:33

阅读数 2

评论数 0

原创 《Linux高性能服务器编程》阅读笔记 之(三)TCP 协议详解

目录 TCP 服务的特点 TCP 头部结构 TCP 固定头部结构 TCP 头部选项 TCP 连接的建立和关闭 三次握手与四次挥手 半关闭状态 连接超时 TCP 状态转移 TCP 状态转移总图 服务器的典型状态转移过程 客户端的典型状态转移过程 TIME_WAIT 状态...

2019-10-18 15:58:54

阅读数 3

评论数 0

原创 我与 CSDN 的短短 5 个月

知道 CSDN 这么一回事儿 知道有 CSDN 这么一回事的时候是好像是在大学了,读的专业是电子信息工程,查资料、遇到 bug 经常会进入到 CSDN 的某个博客里。那个时候觉得 CSDN 好厉害,似乎什么问题都能解决。 特别是现在,到了研究生阶段,每每遇到安装问题,CSDN 最详细;遇到 b...

2019-10-09 19:16:43

阅读数 122

评论数 0

原创 归并排序

归并排序思路代码复杂度分析时间复杂度空间复杂度稳定性分析优势适用场景 思路 将数组对半分到长度为 1 为止,再逆向合并,合并的过程中进行排序。将轮数减少到了 logn。 代码 public class MergeSort{ public static void mergeSort(int[...

2019-10-08 11:05:01

阅读数 52

评论数 0

原创 桶排序

桶排序思路代码复杂度分析时间复杂度空间复杂度稳定性分析优势适用场景 思路 非整形的计数排序,将数放到桶内,先将桶内排序,再整体排序。 k 个桶,最后一个桶用来放最大值,只有 k - 1 个跨度,这 k - 1 个跨度对应 k - 1 个桶。 所以跨度为 (max - min)/(k - 1) 数对...

2019-10-07 11:09:02

阅读数 24

评论数 0

原创 计数排序

计数排序思路代码复杂度分析时间复杂度空间复杂度稳定性分析优势适用场景 思路 1.遍历原始数组 arr 找到最大值和最小值,确定计数数组 countArr 的范围 2.遍历 arr 并计数于 countArr 3.对 countArr 做调整,每个数等于前面的数之和 4.反向遍历 arr,对应 co...

2019-10-07 09:37:11

阅读数 16

评论数 0

原创 堆排序

堆排序思路代码复杂度分析时间复杂度空间复杂度稳定性分析优势适用场景 思路 将数组看成二叉堆,如果是从小到大排序,先下沉为最大堆。再将堆顶的数(最大的数)逐轮与最后一个数交换并不将它纳入堆中,然后下沉。这样一来,每轮都能在数组最后得到这轮中最大的数。 代码 public class HeapSort...

2019-10-06 22:59:00

阅读数 2

评论数 0

原创 快速排序

快速排序思路代码填坑法指针交换法复杂度分析时间复杂度空间复杂读稳定性分析 思路 利用分治的思想,每次选择一个 pivot,将小于 pivot 的数放在左边,大于 pivot 的数放在右边。左右两边再分别选择一个 pivot。 代码 填坑法 public class QuickSort{ ...

2019-10-06 20:45:40

阅读数 14

评论数 0

原创 希尔排序

希尔排序思路代码复杂度分析时间复杂度空间复杂读稳定性分析 思路 插入排序适合大部分数有序。希尔排序为多轮等跨度插入排序。第一轮等跨度插入排序的跨度为 n/2,有 n/2 次插入排序。后面每轮跨度缩小到原来的一半。 代码 public class ShellSort{ public...

2019-10-06 19:12:38

阅读数 19

评论数 0

原创 插入排序

插入排序思路代码复杂度分析时间复杂度空间复杂读稳定性分析 思路 第 i 轮,有序范围为 0 ~ i - 1,选择索引为 i 的数插入到前面合适的位置,使有序范围为 0 ~ i。需要 i - 1轮。 每一轮记录当前 i 的值,将前面比 i 的值大的,往后复制一位。发现比 i 的值小或等于的,将...

2019-10-06 18:12:00

阅读数 6

评论数 0

原创 选择排序

选择排序思路代码复杂度分析时间复杂度空间复杂读稳定性分析 思路 第 i 轮从第 i 个数后面选择一个最小的数与第 i 个数交换。需要 n - 1轮,第 i 轮比较 n - i -1 次。 代码 public class SelectionSort{ public static v...

2019-10-06 17:39:04

阅读数 6

评论数 0

原创 冒泡排序及两步优化

思路 数组长度为 n,每一轮将一个最大的数放到最右边,最后剩一个数不用排,n-1 轮就能排好。第 i 轮需要排 n - i -1 次。 代码 public class BubbleSort{ public static void bubbleSort(int[] arr) { ...

2019-10-06 17:13:54

阅读数 33

评论数 0

原创 Nginx 简介与其架构设计

Nginx 简介与其架构设计什么是 NginxNginx 在架构中发挥的作用Nginx 架构设计Nginx 的模块化设计Nginx 多进程模型Nginx 的epoll模式代理与反向代理 什么是 Nginx Nginx 是俄罗斯人编写的十分轻量级的 HTTP 服务器,Nginx,它的发音为“en...

2019-09-29 09:05:30

阅读数 10

评论数 0

原创 Linux 里进程阻塞是如何实现的

误区一:进程阻塞消耗 CPU 资源 我以前以为进程阻塞是不好的,比如 NIO 里 Socket socket = serverSocket.accept(); 会一直阻塞直到连接到来。程序要一直等待不能往下运行,感觉上是一个不好的事情。 其实,对于 CPU 来说,在这个进程阻塞的时候完全可以去...

2019-09-29 08:41:53

阅读数 23

评论数 0

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