加载中
短域名服务设计思路

背景介绍 所谓的短域名服务,就是处理我们平常经常收到的那种带有短链的短信中的短链的。它具有四个基本的功能:a. 用户点击短域名,服务端接收到请求之后,将其重定向到对应的长域名中;b. ...

2021/10/30 09:05
6.3K
spring boot starter机制

spring boot是一款非常优秀的微服务开发框架,具有开箱即用、简化配置、内置tomcat等等一系列优点。这一切都离不开spring boot的starter机制,starter机制也可以理解为spring boot所实现的一...

2021/05/01 23:11
1.7K
异常报警器

在平常工作中,如果运维没有通过日志监听各个服务的error日志,而我们自己也没有定期查看,那么就会出现一种情况是,某个版本上线某个功能之后,服务出现了大量的异常日志,但是我们却后知后...

2021/03/29 10:42
1.1K
LRU Cache实现原理

一、简介 LRU Cache是我们在平常使用非常多的一种缓存,在构建高并发服务时,Redis往往由于存在网络消耗而无法达到性能要求,这个时候常用数据的本地缓存就显得尤为重要。在项目中,我们常用...

nginx http模块11个阶段驱动模式详解

在nginx调用ngx_http_process_request_headers()方法读取完所有的header数据之后,就调用ngx_http_process_request()方法开始了请求的处理过程,这也就是nginx http模块开始处理请求的11个阶...

nginx request body读取流程详解

前面的文章中我们分别讲解了nginx是如何读取请求行和请求头数据的,在读取完请求头之后,nginx并不会直接读取请求体,而是直接进入http模块的11个阶段开始处理请求的数据。在这个过程中,如果...

nginx请求头数据读取流程

在上一篇文章中,我们讲解了nginx是如何读取请求行的数据,并且解析请求行的。本文我们则主要讲解nginx是如何读取客户端发送来的请求头的数据,并且解析这些数据的。本质上来讲,请求行的数据...

nginx请求行读取流程

在前面的文章中我们讲解了当一个请求到达时,nginx是如何建立连接并且读取数据的。在读取数据完成之后,nginx会将读取事件的回调方法设置为ngx_http_process_request_line(),这个方法主要有...

2020/03/19 10:47
4.8K
nginx数据接收流程详解

在nginx基于epoll模型事件驱动流程详解中我们讲到,epoll在触发accept事件之后,会回调ngx_event_accept()方法。这个方法主要做了两件事: 获取accept到的客户端连接句柄,并且初始化一个ngx...

2020/03/10 07:52
2.5K
nginx内存池实现原理

内存池,顾名思义,是对内存块进行管理的一套工具。通过内存池的封装,我们可以非常方便的从内存池中申请和释放内存,而且由于内存池的内存块是预申请的,这就减少了我们频繁申请系统内存空间...

nginx http模块配置合并

在配置nginx.conf文件的时候,我们很容易发现,有部分配置项是既可以配置在http块,也可以配置在server块,还可以配置在location块中。但是并不是所有的配置项都可以在任意位置进行配置的,根...

2020/02/25 09:39
1.4W
nginx http块配置解析

在上一篇文章中,我们讲解了nginx http模块的存储结构,这个存储结构是我们理解http模块工作原理的基石。本文则主要讲解nginx是如何通过解析nginx.conf中的http配置块来一步一步构建http模块...

2020/02/18 11:28
1K
nginx http模块数据存储结构

从本节开始,我们将进入http模块实现原理的讲解,关于http模块,有一个非常重要的点就是其是如何存储http块、server块和location块的数据的,而且nginx有的配置项是可以在多个配置块中使用的...

nginx worker进程循环

worker进程启动后,其首先会初始化自身运行所需要的环境,然后会进入一个循环,在该循环中不断检查是否有需要执行的事件,然后处理事件。在这个过程中,worker进程也是需要与master进程交互的...

2020/02/04 10:55
1W
nginx事件模块实现细节

在nginx事件模块结构体详解中,我们讲解nginx的事件模块的整体工作流程,并且着重讲解了组织事件模块的各个方法的作用,本文则主要围绕这整个流程,从源码的角度讲解nginx事件模块的实现细节...

2020/01/20 09:08
9.4K
nginx基于epoll模型事件驱动流程详解

epoll是一种基于事件驱动的模型,其是nginx能够高效处理客户端请求的重要原因之一。从流程上来讲,epoll模型的使用主要分为三步:epoll句柄的创建,监听文件描述符的添加和等待事件的触发,本...

nginx事件模块结构体详解

事件模块是nginx的核心模块之一,nginx中客户端请求的处理和命令行指令的执行都是基于事件模块进行驱动的。因此,掌握事件模块的实现原理对于我们理解nginx整体架构有非常重要的意义。本文首...

2020/01/08 08:48
4.6K
nginx惊群问题的解决方式

对于nginx的惊群问题,我们首先需要理解的是,在nginx启动过程中,master进程会监听配置文件中指定的各个端口,然后master进程就会调用fork()方法创建各个子进程,根据进程的工作原理,子进程...

2019/12/31 11:32
7.6K
nginx master工作循环

默认情况下,nginx使用的是master-worker工作模式接收命令行指令和处理客户端请求。在nginx启动master进程后,其会进行整个nginx工作环境的初始化,然后会依次启动worker进程、cache manager...

2019/12/24 06:46
799
nginx配置文件解析

在我们使用nginx的过程中,配置文件可以说是我们接触最为频繁的一个部分,在我们配置完相应的配置项之后,一般都会使用./sbin/nginx -t命令来测试配置文件是否有参数错误,然后再重新加载ngi...

2019/12/17 10:21
1.5K

没有更多内容

加载失败,请刷新页面

返回顶部
顶部