nginx系统学习
文章平均质量分 54
freedomai
这个作者很懒,什么都没留下…
展开
-
定时任务完成日志切割
#!/bin/bashbase_path='/usr/local/nginx/logs'log_path=$(date -d yesterday +"%Y%m")day=$(date -d yesterday +"%d")mkdir -p $base_path/$log_pathmv $base_path/access.log $base_path/$log_path/acce原创 2015-05-20 23:20:36 · 727 阅读 · 0 评论 -
服务器集群搭建以及性能测试
搭建环境介绍:PHP服务器环境配置:编译PHP1.enabale-fpm , with-mysql=mysqlnd (编译成独立fpm进程,支持mysql,)2.下载第3方的memcached扩展 编译进来vim /usr/local/php/etc/php-fpm.conf写入:pm = static#让php-fpm的子进程处于不被回收状原创 2015-06-23 22:24:42 · 4524 阅读 · 0 评论 -
集群性能测试实验原始数据
只测nginx[root@localhost bench]# /usr/local/httpd/bin/ab -rc 10000 -n 500000 -k http://192.168.1.202/test.phpThis is ApacheBench, Version 2.3 Copyright 1996 Adam Twiss, Zeus Technology Ltd, h原创 2015-06-23 22:52:08 · 549 阅读 · 0 评论 -
Location详解之精准匹配、正则匹配
location 语法location 有”定位”的意思, 根据Uri来进行不同的定位.在虚拟主机的配置中,是必不可少的,location可以把网站的不同部分,定位到不同的处理方式上.比如, 碰到.php, 如何调用PHP解释器? --这时就需要locationlocation 的语法location [=|~|~*|^~] patt {}中括号可以不写任何参数,此时原创 2015-05-23 00:03:43 · 3433 阅读 · 0 评论 -
nginx gzip压缩提升网站速度
观察news.163.com的头信息请求:Accept-Encoding:gzip,deflate,sdch响应:Content-Encoding:gzipContent-Length:36093再把页面另存下来,观察,约10W字节,实际传输的36093字节原因-------就在于gzip压缩上.原理: 浏览器---请求----> 声明可以接受 gz原创 2015-06-09 23:06:26 · 339 阅读 · 0 评论 -
expires缓存提升网站负载
对于网站的图片,尤其是新闻站, 图片一旦发布, 改动的可能是非常小的. 可以用到 nginx的expires设置在用户访问一次后, 图片缓存在用户的浏览器端,且时间比较长的缓存.nginx中设置过期时间,非常简单,在location或if段里,来写.格式 expires 30s; expires 30m; expires 2h;原创 2015-06-10 23:52:22 · 1574 阅读 · 0 评论 -
nginx实现负载均衡
反向代理后端如果有多台服务器,自然可形成负载均衡,proxy_pass指向多台服务器思路:1.把多台服务器用up_stream指定绑定在一起并起个组名2.proxy_pass指向该组负载均衡实现图片服务器:upstream imgserver { server 192.168.1.100:81 weight=1 max_fails=2 fail_timeout=原创 2015-06-13 10:38:45 · 497 阅读 · 1 评论 -
nginx反向代理异步传输模式(原理)
sudone.com在nginx的反向代理介绍中,提到了异步传输模式并提到它可以减少后端连接数和压力,这是为何?下面就来讲解下传统的代理(apache/squid)的同步传输和nginx的异步传输的差异。如图:squid同步传输:浏览器发起请求,而后请求会立刻被转到后台,于是在浏览器和后台之间就建立了一个通道。在请求发起直到请求完成,这条通道都是一直存在的。nginx异转载 2015-07-11 14:39:06 · 2229 阅读 · 0 评论 -
第3方模块编译及一致性哈希应用
http://wiki.nginx.org/HttpUpstreamConsistentHash一致性哈希源码包下载网址:wget https://github.com/replay/ngx_http_consistent_hash/archive/master.zip下载得到master文件,然后使用unzip直接解压即可看到ngx_http_consistent_hash-原创 2015-06-14 18:56:56 · 997 阅读 · 0 评论 -
nginx日志管理
#access_log logs/host.access.log main;这说明 该server, 它的访问日志的文件是 logs/host.access.log ,使用的格式”main”格式.除了main格式,可以自定义其他格式.main格式是什么?log_format main '$remote_addr - $remote_user [$time_lo原创 2015-05-18 23:27:08 · 317 阅读 · 0 评论 -
反向代理实现nginx+apache动静分离
nginx作为中转服务器,端口为80apache作为动态访问服务器(即访问php文件请求时,需要转发给apache处理),端口为8080apache虚拟主机根目录指向/usr/local/nginx/html(网站根目录)修改nginx配置文件location:在遇到访问php请求时,做请求转发location ~ \.php$ { proxy_原创 2015-06-13 09:25:16 · 1264 阅读 · 0 评论 -
nginx Rewrite语法详解
重写中用到的指令if (条件) {} 设定条件,再进行重写 set #设置变量return #返回状态码 break #跳出rewriterewrite #重写If 语法格式:If 空格 (条件) { 重写模式}3种条件写法格式:1: “=”来判断相等, 用于字符串比较2: “~” 用正则来匹配(此处的正则区分大小原创 2015-05-27 08:21:00 · 706 阅读 · 0 评论 -
nginx信号量
Nginx的信号控制:选项 作用TERM, INT Quick shutdown 直接杀死进程(粗暴)QUIT原创 2015-05-17 17:24:52 · 1547 阅读 · 0 评论 -
编译PHP并与nginx整合
apache一般是把php当做自己的一个模块来启动的.而nginx则是把http请求变量(如get,user_agent等)转发给 php进程,即php独立进程,与nginx进行通信. 称为 fastcgi运行方式.因此,为apache所编译的php,是不能用于nginx的.注意: 我们编译的PHP 要有如下功能:连接mysql, gd, ttf, 以fpm(fascgi)原创 2015-05-27 08:31:46 · 1459 阅读 · 0 评论 -
大访问量优化整体思路
对于高性能网站 ,请求量大,如何支撑?1方面,要减少请求对于开发人员----合并css, 背景图片, 减少mysql查询等.2: 对于运维---- nginx的expires ,利用浏览器缓存等,减少查询.3: 利用cdn来响应请求4: 最终剩下的,不可避免的请求----服务器集群+负载均衡来支撑.所以,来到第4步后,就不要再考虑原创 2015-06-15 12:59:04 · 898 阅读 · 0 评论 -
ab压力测试及nginx性能统计模块
ab命令是apache自带的用于web服务器压力测试用的ab命令使用:/usr/local/apache/bin/ab -c 2000 -n 80000 http://192.168.61.161/index.html注意:当并发量太大时,会报错(too many open files)原因 : ab在压力测试时,打开的socket过多解决: ulimit -原创 2015-06-15 23:53:07 · 2181 阅读 · 0 评论 -
nginx连接memcached
php连接memcache流程:步骤一:下载并解压memcache源码包步骤二:cd到memcache解压目录下,解压后的memcache目录是没有configure,需要执行/usr/local/php5.4/bin/phpize,会自动生成configure步骤三:./configure --with-php-config=/usr/local/php5.4/bin/原创 2015-06-14 16:18:36 · 1246 阅读 · 0 评论 -
nginx虚拟主机配置
Nginx配置段// 全局区worker_processes 1; // 有1个工作的子进程,可以自行修改,但太大无益,因为要争夺CPU,一般设置为 CPU数*核数event {// 一般是配置nginx连接的特性// 如1个word能同时允许多少连接 worker_connections 1024; // 这是指 一个子进程最大允许连1024个连接}原创 2015-05-17 23:33:05 · 345 阅读 · 0 评论 -
nginx单机1W并发优化
高并发思路:socket层面分析:->nginx:1.子进程允许打开的连接(worker_connections)2.http连接快速关闭(keep_alivetime 0;)//http请求完之后,马上断开连接->系统:1.最大连接数(somaxconn)2.加快tcp连接的回收(recycle)3.空的tcp是否允许回收利用(reuse)4.洪水攻击原创 2015-06-17 06:43:53 · 3923 阅读 · 0 评论