
nginx
hai0808
这个作者很懒,什么都没留下…
展开
-
Nginx + FastCGI 程序(C/C++) 搭建高性能web service的Demo及部署发布
1.介绍 Nginx - 高性能web server,这个不用多说了,大家都知道。 FastCGI程序 - 常驻型CGI程序,它是语言无关的、可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能。 Nginx要调用FastCGI程序,需要用到FastCGI进程管理程序(因为nginx不能直接执行外部的cgi程序转载 2017-09-26 18:21:40 · 410 阅读 · 0 评论 -
输出nginx执行过程中函数调用关系
添加源文件首先在src/core/目录下添加两个文件,分别是my_debug.h和my_debug.c。#ifndef MY_DEBUG_LENKY_H#define MY_DEBUG_LENKY_H#include <stdio.h>void enable_my_debug(void) __attribute__ ((no_instrument_function));vo...原创 2018-04-12 09:01:40 · 409 阅读 · 0 评论 -
epoll_wait被signal信号中断时的处理
libevent 用fd事件来通知epoll_wait,处理事件。epoll_wait在信号处理后,会返回-1 ,错误码为EINTR,直接return 0nginx用全局变量来通知进程,epoll_wait在信号处理后,会返回-1 ,错误码为EINTR,在主循环里处理事件...原创 2018-05-28 14:58:02 · 2897 阅读 · 0 评论 -
Nginx的安装与部署
1:安装工具包 wget、vim和gccyum install -y wget yum install -y vim-enhanced yum install -y make cmake gcc gcc-c++ 1232:下载nginx安装包wget http://nginx.org/download/nginx-1.6.2.tar.gz13:安装依赖包yum install -y pc...转载 2018-06-08 18:02:02 · 223 阅读 · 0 评论 -
Nginx基于TCP的四层负载均衡介绍
Nginx Plus的商业授权版开始具有TCP负载均衡的功能。从Nginx 1.7.7版本开始加入的,现在变成了一个商业收费版本,想要试用,需要在官网申请。也就是说,Nginx除了以前常用的HTTP负载均衡外,Nginx增加基于TCP协议实现的负载均衡方法。HTTP负载均衡,也就是我们通常所有“七层负载均衡”,工作在第七层“应用层”。而TCP负载均衡,就是我们通常所说的“四层负载均衡”,工作在...转载 2018-08-02 15:57:37 · 869 阅读 · 0 评论 -
Nginx会话保持之nginx-sticky-module模块
在使用负载均衡的时候会遇到会话保持的问题,常用的方法有: 1.ip hash,根据客户端的IP,将请求分配到不同的服务器上 2.cookie,服务器给客户端下发一个cookie,具有特定cookie的请求会分配给它的发布者 注意:cookie需要浏览器支持,且有时候会泄露数据1.Sticky工作原理: Sticky是nginx的一个模块,它是基于cookie的一种nginx的负载均衡解...转载 2018-10-12 12:08:48 · 608 阅读 · 0 评论 -
nginx子请求并发处理
https://blog.youkuaiyun.com/ApeLife子请求并非http协议标准的实现,可以说是nginx所特有的设计, 为什么需要子请求呢? 一般认为这主要是为了提高nginx内部对单个客户端请求处理的并发能力。如果客户端的某个主请求访问了多个资源(例如通过ssi功能包含了a.html, b.hmtl、c.html三个资源), 那么对每一处资源访问建立一个子请求并让它们同时进行,效率自...转载 2018-09-29 17:44:57 · 1267 阅读 · 0 评论 -
nginx alias正则表达式
location ~ /mytest/(.*) { alias /usr/local/nginx/html/$1;}原创 2018-11-12 14:59:30 · 3234 阅读 · 0 评论 -
Nginx rewrite模块深入浅出详解
rewrite模块(ngx_http_rewrite_module)nginx通过ngx_http_rewrite_module模块支持url重写、支持if条件判断,但不支持else。另外该模块需要PCRE支持,应在编译nginx时指定PCRE支持。根据相关变量重定向和选择不同的配置,从一个location跳转到另一个location,不过这样的循环最多可以执行10次,超过后nginx将返回5...转载 2018-11-14 12:14:55 · 187 阅读 · 0 评论 -
nginx获取函数执行调用关系
//代码片段2.4-1,文件名: my_debug.h #ifndef MY_DEBUG_LENKY_H #define MY_DEBUG_LENKY_H #include <stdio.h> void enable_my_debug( void ) __attribute__((no_instrument_function)); void disable_my_debug(...转载 2018-04-10 12:37:04 · 419 阅读 · 0 评论 -
tcpdump
1. tcpdump -D 获取网络适配器列表,以下是在Ubuntu上获取到的结果: root@holmesian-laptop:~# tcpdump -D 1.eth0 2.wlan0 3.usbmon1 (USB bus number 1) 4.usbmon2 (USB bus number 2) 5.usbmon3 (USB bus number 3)转载 2016-10-29 14:14:26 · 505 阅读 · 0 评论 -
ubuntu下安装nginx时依赖库zlib,pcre,openssl安装方法
最近刚开始学习Nginx,安装Nginx时需要先安装依赖包,Ubuntu中不像centOS等使用yum直接在线安装,在网上找了好多方法,最后发现以下方法好用:首先使用dpkg命令查看自己需要的软件是否安装。例如查看zlib是否安装:[cpp] view plain copydpkg -l | grep zlib转载 2017-09-02 09:38:34 · 330 阅读 · 0 评论 -
nginx的4个学习资料
1.nginx开发从入门到精通(淘宝开发成员维护) http://tengine.taobao.org/book/index.html2.nginx注释版源码 https://github.com/jianfengye/nginx-1.0.14_comment3.nginx模块开发与架构解析(阿里 陶辉编写 网上可找到PDF)4.实战nginx取代apache的高性能web服务器 (网...原创 2017-09-26 19:31:13 · 917 阅读 · 0 评论 -
Socket中listen
listen函数摘要:listen函数使用主动连接套接口变为被连接套接口,使得一个进程可以接受其它进程的请求,从而成为一个服务器进程。在TCP服务器编程中listen函数把进程变为一个服务器,并指定相应的套接字变为被动连接。listen函数在一般在调用bind之后-调用accept之前调用,它的函数原型是:intlisten(int sockfd, int backlog)转载 2017-11-30 15:34:21 · 1086 阅读 · 0 评论 -
摘录nginx 信号处理方法部分代码
编译及执行步骤:1.接收进程编译 : g++ -g -o a.out signal.c2.运行接收进程:./a.out3.发送进程编译: g++ -o b.out signal.c4.发送进程查询接收进程pid:ps -alx | grep a.out | awk ‘{print $3}’5.发送进程发送信号:./b.out -s reload -p 36357(36357是第4部查询到原创 2017-11-27 17:23:13 · 290 阅读 · 0 评论 -
Httperf测试web服务器
最近项目组有一个项目,客户明确规定使用httperf对我们搭建好的Web服务器进行性能测试,我们头分给我的任务是熟悉httperf测试工具。google了一番,找到许多有用的资料:1.使用httperf和autobench直观的分析服务器能.2.httperf-and-autobench-in-slax两篇文章都提到了httperf以及autobench,我不禁想客户提出只是htt转载 2017-12-26 20:07:37 · 696 阅读 · 0 评论 -
nginx自定义http头
1.FCGX中,自定义头可以从环境变量获得。2.获取时名字前面要加HTTP_,字母要全部大写。3.发送头不能有下划线_,不然该字段会被过滤掉,传不到后台4.发送头有-,会被转为下划线,如user-name到后台后为HTTP_USER_NAME5.Fcgi中全局变量environ是获取所有环境变量6.可以用getenv 或者 FCGX_GetParam获取单个环境变量。7....原创 2018-01-02 10:46:49 · 1129 阅读 · 0 评论 -
spawn-fcgi
在运行spawn-fcgi时出现错误:spawn-fcgi: child exited with: 0-f 使用绝对路径!!!! /usr/local/bin/spawn-fcgi -a 127.0.0.1 -p 30012 -f /home/share/nginx-1.13.4/fcgi-2.4.0/examples/echo原创 2018-01-02 19:01:28 · 2143 阅读 · 0 评论 -
ngx对accept加锁操作
对文件加锁,但里面的数据是错误的,先记录下,以后回来看,是缓冲造成的???。用共享内存操作是正确的#include<fcntl.h>#include<unistd.h>#include<stdio.h>#include<stdlib.h>#include<string.h>#include<sys/ipc.h>...原创 2018-12-26 11:39:11 · 214 阅读 · 0 评论