0 君莫笑(๑˙ー˙๑)

尚未进行身份认证

欢迎互关,一起学习,共同进步

等级
TA的排名 7w+

Nginx 解决跨域问题

Nginx解决跨域问题问题由来Jsonp的解决之道CORS的解决之道nginx配置跨域操作(CORS)简单请求复杂请求CORS对比反向代理问题由来浏览器拒绝执行其它域名下的ajax运作:我想自己做一个搜索网站,但我不会搜索技术,怎么办呢?如果能发起ajax请求到百度就好了呢,可以这样吗?肯定不行,如果浏览器在自己的服务器域名对应的html页面内,发起ajax请求偷...

2019-10-20 18:57:05

Openresty 的安装

如果有依赖没下载,可以参考Linux(CentOS7)下Nginx1.15.8安装步骤前面的依赖下载。下载解压源码:wgethttps://openresty.org/download/openresty-1.15.8.1.tar.gztar-zxvfopenresty-1.15.8.1.tar.gz选择需要的插件启用,--with-Components激活组件,...

2019-10-18 22:13:52

Nginx 负载均衡 —— upstream 配置

Nginx负载均衡——upstream配置语法格式轮询(默认)weightip_hash代理时的负载使用语法格式upstream负载名{ [ip_hash;] serverip:port[weight=数字][down]; serverip:port[weight=数字];}#[]内容为可选项轮询(默认)upstreamorder{ se...

2019-10-18 21:29:53

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

目录TCP服务的特点TCP头部结构TCP固定头部结构TCP头部选项TCP连接的建立和关闭三次握手与四次挥手半关闭状态连接超时TCP状态转移TCP状态转移总图服务器的典型状态转移过程客户端的典型状态转移过程TIME_WAIT状态TCP交互数据流TCP成块数据流TCP超时重传拥塞控制拥塞控制概述慢启...

2019-10-14 16:17:50

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

目录IP服务的特点IPv4头部结构介绍使用tcpdump观察IPv4头部结构IP分片介绍使用tcpdump观察IP分片IP路由IP模块工作流程路由机制IP转发重定向ICPM重定向报文IPv6头部结构IPv6固定头部结构IPv6扩展头部IP服务的特点IP协议是TCP/IP协议族的动力,它为上层...

2019-10-11 10:00:59

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

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

2019-10-10 14:57:23

我与 CSDN 的短短 5 个月

知道CSDN这么一回事儿知道有CSDN这么一回事的时候是好像是在大学了,读的专业是电子信息工程,查资料、遇到bug经常会进入到CSDN的某个博客里。那个时候觉得CSDN好厉害,似乎什么问题都能解决。特别是现在,到了研究生阶段,每每遇到安装问题,CSDN最详细;遇到bug,百度一搜error信息就会出现CSDN里的解答。但到此为止,我也仅仅只能作为读者发出感叹,也...

2019-10-09 17:16:18

归并排序

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

2019-10-08 10:46:16

桶排序

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

2019-10-07 09:55:30

计数排序

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

2019-10-07 09:11:53

堆排序

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

2019-10-06 21:31:15

快速排序

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

2019-10-06 19:29:19

希尔排序

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

2019-10-06 18:13:06

插入排序

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

2019-10-06 18:04:12

选择排序

选择排序思路代码复杂度分析时间复杂度空间复杂读稳定性分析思路第i轮从第i个数后面选择一个最小的数与第i个数交换。需要n-1轮,第i轮比较n-i-1次。代码publicclassSelectionSort{publicstaticvoidselectionSort(int[]arr){for(inti=0;i&...

2019-10-06 17:38:37

冒泡排序及两步优化

思路数组长度为n,每一轮将一个最大的数放到最右边,最后剩一个数不用排,n-1轮就能排好。第i轮需要排n-i-1次。代码publicclassBubbleSort{publicstaticvoidbubbleSort(int[]arr){for(inti=0;i<arr.length;i++){...

2019-10-06 16:38:56

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

前置文章:Linux(CentOS7)下Nginx1.15.8安装步骤Nginx的配置文件nginx.conf我们访问一个网址,服务器返回对应的资源。那么一个网址是如何对应一个资源的呢?用Nginx可以很好地帮我们实现路由功能,我们所有需要做的就是配置好location模块。目录语法规则匹配规则proxy_pass代理转发root与inde...

2019-09-29 20:46:55

Nginx 简介与其架构设计

Nginx简介与其架构设计什么是NginxNginx在架构中发挥的作用Nginx架构设计Nginx的模块化设计Nginx多进程模型Nginx的epoll模式代理与反向代理什么是NginxNginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engineX”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP代理服...

2019-09-28 10:37:45

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

误区一:进程阻塞消耗CPU资源我以前以为进程阻塞是不好的,比如NIO里Socketsocket=serverSocket.accept();会一直阻塞直到连接到来。程序要一直等待不能往下运行,感觉上是一个不好的事情。其实,对于CPU来说,在这个进程阻塞的时候完全可以去跑别的程序。而对于上面的程序来说,这个阻塞也是有益的,它提供了一个等待的时间让程序能够等待连接到来。你可...

2019-09-28 20:39:37

Nginx 日志配置、日志切割

Nginx日志配置设置access.log语法log_format自定义格式设置error_log语法日志切割前置文章:Nginx的配置文件nginx.confNginx日志对于统计、系统服务排错很有用。Nginx日志主要分为两种:access_log(访问日志)和error_log(错误日志)。通过访问日志我们可以得到用户的IP地址、浏览器的信息,请求的处理时间等信息。错误日志...

2019-09-26 09:20:21

查看更多

勋章 我的勋章
  • 新人勋章
    新人勋章
    用户发布第一条Blink获赞超过3个即可获得
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。