当前位置: 首页 > news >正文

设计坞网站怎么样wordpress 文章点赞插件

设计坞网站怎么样,wordpress 文章点赞插件,seo查询系统,凡客的网站功能Nginx请求流程 Nginx进程结构 Nginx有两种进程结构#xff0c;一种是单进程#xff08;可以用于测试#xff09;#xff0c;一种是多进程#xff08;用于生产#xff0c;默认#xff09; Nginx会按需同时运行多个进程#xff1a;一个主进程(master)和几个工作进程(work… Nginx请求流程         Nginx进程结构   Nginx有两种进程结构一种是单进程可以用于测试一种是多进程用于生产默认   Nginx会按需同时运行多个进程一个主进程(master)和几个工作进程(worker)配置了缓存时还会有缓存加载器进程(cache loader)和缓存管理器进程(cache manager)等。Nginx主要通过“共享内存”的机制实现进程间通信。worker 进程数一般会设置成机器 cpu 核数。因为更多的worker 数只会导致进程相互竞争 cpu从而带来不必要的上下文切换。   请求的缓存处理还是由work进程来执行的。CM缓存的管理CL缓存的载入。                        进程结构测试   1、ps -ef | grep nginx可以查看到所有的work进程和cache进程2、../sbin/nginx -s reload重新加载配置3、ps -ef | grep nginx可以查看到之前所有的work进程和cache进程全部退出重新生成新的work进程和cache进程4、kill -SIGHUP 9170向master进程发送hub信号结果和reload一样5、ps -ef | grep nginx可以查看到之前所有的work进程和cache进程全部退出重新生成新的work进程和cache进程6、kill -SIGTERM 16982向work进程发送退出信号7、ps -ef | grep nginx16982进程退出会重新生成一个work进程 Nginx采用多进程而不是多线程目的   Nginx 的进程就是线程即每个进程里只有一个线程但这一个线程可以服务多个客户端。   Nginx需要保证高可用和高可靠性多线程线程之间共享某一快地址空间如果某一个第三方某块引发了一个地址空间导致的断错误时在地址越界出现时会导致整个Nginx整个进程挂掉。   nginx采用多进程的方式既可以避免因某个线程故障导致整个服务不可用的问题也可以实现配置热加载不停服升级版本。 Nginx实现高并发原理   参考https://blog.csdn.net/m0_38110132/article/details/75126316 多进程之间通讯   多进程通讯可以使用共享内存信号等Nginx做进程管理通常只使用信号   Master进程可以监控wrok进程是否像master发送CHLD信号因为子进程终止的时候回向父进程发送CHLD信号如果work由于意外发生终止认为输入命令终止但是我们一般不这么做我们通过发送命令给master让master来终止work进程此时master进程就会知道。     reload详解 1、向master进程发送HUP信号reload命令 2、master进程校验配置语法是否正确 3、master进程打开新的监听端口配置文件可能添加了新的端口 4、master进程用新配置启动新的worker子进程 5、master进程向老worker子进程发送QUIT信号 6、老worker进程关闭监听句柄处理完当前连接后结束进程热升级流程详解 1、将旧Nginx文件换成新Nginx文件注意备份 2、向master进程发送USR2信号 3、master进程修改pid文件名加后缀.oldbin 4、master进程用新Nginx文件启动新master进程 5、向老master进程发送QUIT信号关闭老master进程 6、回滚向老master发送HUP向新master发送QUIT如果优雅的关闭work进程(缓慢的关闭) 如果当前的work已经在处理请求立刻关闭连接就会造成用户接受错误消息 1、设置定时器worker shutdown timeout 2、关闭监听句柄 3、关闭空闲连接 4、在循环中等待全部连接关闭 5、退出进程   Nginx异步框架工作流程      Nginx事件循环     epoll使用优势 在大并发情况下100万个请求往往活跃连接数就几百个所以epoll只需要处理这几百个连接而select和poll需要将这100万个连接统统扔给操作系统操作系统依次判断哪些连接有事件进来所以操作系统做了大量的无用功   非堵塞调用     Nginx如果通过连接池来处理网络请求     欲分配的连接数目 参考http://nginx.org/en/docs/ngx_core_module.html#worker_connections Syntax: worker_connections number; Default: worker_connections 512; //512:512个数组对应512个连接生产中需要配置更大的 Context: events一个客户端请求需要使用一个connect连接(struct ngx_connection_s结构体占空间232个字节)一个连接对应两个事件读和写struct ngx_event_s结构体占空间96个字节所以worker_connections分配越大初始化就会占用23296*2个字节 补充读和写超时时间配置http://nginx.org/en/docs/http/ngx_http_core_module.html#client_header_timeout    一个请求到来work占用连接数是2个或者4个如果请求访问的是静态资源nginx可以直接给用户返回此时占用两个如果请求的是动态资源nginx需要将请求转发给tomcat此时占用连接数是4个。   nginx有一个master如果有4个work每一个work支持的最大连接数是1024支持的最大的并发数是多少     (1) 4*1024/2     (2) 4*1024/4 nginx内存池   内存池是在真正使用内存之前预先申请分配一定数量的、大小相等(一般情况下)的内存块留作备用。当有新的内存需求时就从内存池中分出一部分内存块若内存块不够用时再继续申请新的内存。   内存池的好处有减少向系统申请和释放内存的时间开销解决内存频繁分配产生的碎片提示程序性能减少程序员在编写代码中对内存的关注等   目前一些常见的内存池实现方案有STL中的内存分配区boost中的object_pool,nginx中的ngx_pool_t,google的开源项目TCMalloc等。    在分配的内存上nginx有小块内存和大块内存的概念小块内存 nginx在分配的时候会尝试在当前的内存池节点中分配而大块内存会调用系统函数malloc向操作系统申请   在释放内存的时候nginx没有专门提供针对释放小块内存的函数小块内存会在ngx_destory_pool 和 ngx_reset_pool的时候一并释放   分配时怎么判断是小块内存还是大块内存呢    p-max(size NGX_MAX_ALLOC_FROM_POOL) ? size : NGX_MAX_ALLOC_FROM_POOL;    #define NGX_MAX_ALLOC_FROM_POOL (ngx_pagesize - 1)    Pagesize为内存一页的大小x86结构通常为4k    Max为内存池可分配大小和pagesize中较小的一个    如果需要分配的内存大于max则认为是较大内存否则为较小内存 Nginx分配内存的配置   连接内存池的大小http://nginx.org/en/docs/http/ngx_http_core_module.html#connection_pool_size默认512|516需要保存大量的上下文比如很长的urlheader   请求内存池的大小http://nginx.org/en/docs/http/ngx_http_core_module.html#request_pool_size默认4k因为保存的上下文比较少只需要帮组后面的请求读取最初的一部分字节就可以了 参考https://www.cnblogs.com/magicsoar/p/6040238.html   Work进程之间协同工作 work之间如果需要共享数据需要使用共享内存 信号量会导致进程发生休眠状态比如当某一个块内存被1号进程使用那么2号就会进行休眠等待1号通知2号锁已经释放 自旋锁比如当某一个块内存被1号进程使用那么2号就会不断的试图去解锁要求所有的Nginx模块需要快速的使用共享内存     Slab内存管理     下载Tenginehttp://tengine.taobao.org/download_cn.html (slab没有独立的模块我们需要将tengin整个下载下来) 使用编译nginx make之后对nginx进行热部署...   Nginx容器   数组  链表  队列  哈希表  红黑树  基数树   转载于:https://www.cnblogs.com/yanxiaoge/p/11561448.html
http://www.yutouwan.com/news/175892/

相关文章:

  • php网站怎么做后台管理山东响应式网站建设
  • 泊头做网站的公司锦州网站建设更好
  • 信息化建设网站上海自助建站系统
  • 网站建设推广招代理加盟顺企网网站建设
  • 卫生局网站建设实施方案WordPress背景图片编辑
  • html做分页的网站兰山区建设局网站
  • 好搭建网站建设wordpress 插件 设计
  • 咖啡建设网站的目的河北省地图
  • 遵义网站开发的公司自媒体网站模板
  • 网站备案提交管局西安有什么旅游景点
  • 潍坊市建设监理协会网站html课程
  • 华为云网站定制设计wordpress主题下载地址
  • 购物网站建设优缺点国外服务器租用多少钱一年
  • 各种网站末班福田产品设计
  • 陕西做网站公司wordpress教程视频教程
  • 浙江网站建设设计哪个网站找住宿的便宜
  • 上海网站搜索优化想建设退伍军人网站
  • 柳州做网站哪家好企业门户网站建设报价
  • 网站怎么做导航页最好app开发公司
  • oppo官方网站软件开发需求分析模板
  • 学院网站建设报告中山市安全平台教育
  • 网站广告推广公司上海市人力资源网官网
  • 深圳婚纱摄影网站建设一些做淘宝优惠券的网站
  • 邵阳建设银行网站线上怎么做推广和宣传
  • 免费网站建设绑定域名产品seo怎么优化
  • 四子王旗建设局网站c2c交易平台下载
  • 网站建设接活app做网站做图电脑需要什么配置
  • 广州seo网站推广顾问个人网站转企业
  • 廉政建设网站网址之家
  • 青岛做网站哪里好信息课做网站的软件