标签 cycle 下的文章

  • 📂nginx父子进程间通信教程

    父子进程间通信1 内部流程 — socketpair 基础主要是通过socketpair()函数实现的,下面捋一下内部流程: 1. 话说要从ngx_start_worker_processes函数讲起: static void ngx_start_worker_processes(ngx_cycle_t *cycle, ngx_int_t n, ngx_int_t type) { n...

  • 📂Nginx 学习 2: nginx进程模型教程

    一. 概述nginx有两类进程,一类称为master进程(相当于管理进程),另一类称为worker进程(实际工作进程)。启动方式有两种:单进程启动:此时系统中仅有一个进程,该进程既充当master进程的角色,也充当worker进程的角色。多进程启动:此时系统有且仅有一个master进程,至少有一个worker进程工作。master进程主要进行一些全局性的初始化工作和管理worker的工作;事...

  • 📂Nginx启动流程概览教程

    Nginx启动流程概览1、 Init Cycle2、 Init Process3、 Start Worker4、 Event HandleInit Cyclengx\_cycle 是nginx全局配置,类型为ngx\_cycle\_t,其结构如下(已精简): struct ngx_cycle_s { ...

  • 📂nginx 平滑重启的实现方法教程

    一、背景在服务器开发过程中,难免需要重启服务加载新的代码或配置,如果能够保证server重启的过程中服务不间断,那重启对于业务的影响可以降为0。最近调研了一下nginx平滑重启,觉得很有意思,记录下来供有兴趣的同学查阅。二、重启流程重启意味着新旧接替,在交接任务的过程中势必会存在新旧server并存的情形,因此,重启的流程大致为:启动新的server新旧server并存,两者共同处理请求,提...

  • 📂Nginx源码分析 - 主流程篇 - 多进程的惊群和进程负载均衡处理教程

    Linux2.6版本之前还存在对于socket的accept的惊群现象。之后的版本已经解决掉了这个问题。惊群是指多个进程/线程在等待同一资源时,每当资源可用,所有的进程/线程都来竞争资源的现象。Nginx采用的是多进程的模式。假设Linux系统是2.6版本以前,当有一个客户端要连到Nginx服务器上,Nginx的N个进程都会去监听socket的accept的,如果全部的N个进程都对这个客户端...

  • 📂Linux服务器开发——Nginx(三)启动main函数解析教程

    Nginx的主流程的实现函数在./src/core/nginx.c文件中其中的重点模块会在后面的文章里详解-------------------------------------------------大部分初始化工作的中心,变量cycle解析:-------------------------------------------------<pre class="has&...

  • 📂基于内存的类似redis的缓存方法教程

    项目中需要用到redis,业务起来之后用到的地方更多,问题来了,因为操作redis太频繁,导致操作redis成为整个项目的瓶颈,经过调研和比较这时候基于内存的cache登场,简单来说就是纯内存层面的cache,可以实现 1、缓存数量的限制(不能无限制的堆内存,会撑爆) 2、能设置过期时间(内存中只缓存高频出现的数据)放上业务流程的对比图,就是在redis之前加了一层,比较redis虽然基...