![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
apache和nginx(服务器)
筑梦悠然
The running of life depends on the perseverance in the journey, rather than momentary outburst.
人生的奔跑,不在于瞬间的爆发,而取决于途中的坚持!
展开
-
nginx虚拟主机配置指南(超全超傻瓜式)
目录一、虚拟主机配置实例(亲测可用)1、单项目的(域名=test.single.com,项目名=single)2、多项目的(域名=test.multi.com,项目名=multi)二、Nginx相关参数详解1、fastcgi.conf与fastcgi_param的区别2、PHP Primary script unknown 终极解决方法3、location4、try_files5、rewrite一、虚拟主机配置实例(亲测可用)1、单项目的(域名=test.sin.原创 2020-05-22 10:50:48 · 566 阅读 · 0 评论 -
【面试】秒杀系统+高并发+(服务|缓存)雪崩
一、秒杀系统1、秒杀系统的设计(前端-后端-数据库-监控系统-中间代理)秒杀系统 问题 解决 问题(3个) 1.(a)每次都跟数据库交互,高并发的情况下,数据库吃不消,宕机。(b)多进程或多线程的情况下会导致数据脏读,导致秒杀产品超卖,或者存在读写锁冲突,请求超时。 (a)将请求拦截在系统上游,降低下游压力。(b)数据库行锁(推荐乐观锁),先扣库存,成功后再创建...转载 2020-02-09 18:29:55 · 1236 阅读 · 0 评论 -
吊打分布式原理
1 概念1.1 模型节点在具体的工程项目中,一个节点往往是一个操作系统上的进程。在本文的模型中,认为节点是一个完整的、不可分的整体,如果某个程序进程实际上由若干相对独立部分构成,则在模型中可以将一个进程划分为多个节点。异常 机器宕机:机器宕机是最常见的异常之一。在大型集群中每日宕机发生的概率为千分之一左右,在实践中,一台宕机的机器恢复的时间通常认为是24 小时,一般需要人工介...转载 2020-02-20 12:42:47 · 262 阅读 · 0 评论 -
高并发场景下的集群与分布式
1、分布式与集群的比较 分布式 集群 业务实现方式 将不同的业务分布在不同的地方 将几台服务器集中在一起,实现同一业务 提升效率方式 缩短单个任务的执行时间 提高单位时间内执行的任务数 联系 分布式中的每一个节点,都可以做集群。 而集群并不一定就是分布式的。 2、集群主要分为:高可用集群(High Availability Clust...原创 2020-02-09 20:00:32 · 512 阅读 · 0 评论 -
服务雪崩+缓存雪崩+解决方案
一、服务雪崩1、定义:服务堆积在同一个线程池中,因为所有的请求都是同一个线程池进行处理,这时候如果在高并发情况下,所有的请求全部访问同一个接口,这时候可能会导致其他服务没有线程进行接受请求,这就是服务雪崩效应效应。2、原因:a.某几个机器故障:例如机器的硬驱动引起的错误,或者一些特定的机器上出现一些的bug(如,内存中断或者死锁)。b.服务器负载发生变化:某些时候服务会因为用户行为...转载 2020-02-09 17:59:02 · 3756 阅读 · 1 评论 -
查看nginx和php的编译参数
在已经编译安装好的nginx和php的server上是可以查看之前编译时候的参数的,方法如下。1、查看nginx的编译参数# nginx -Vnginx version: nginx/1.9.4built by gcc 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) configure arguments: --prefix=/usr/loca...转载 2018-03-30 18:38:08 · 984 阅读 · 0 评论 -
Nginx location解析 + url尾部的斜杠是否需要
语法规则location [ = | ~ | ~* | ^~ ] uri { ... }location @name { ... }语法规则很简单,一个location关键字,后面跟着可选的修饰符,后面是要匹配的字符,花括号中是要执行的操作。修饰符=表示精确匹配。只有请求的url路径与后面的字符串完全相等时,才会命中。 ~表示该规则是使用正则定义的,区分大小写。 ~*...转载 2019-07-24 07:55:54 · 11819 阅读 · 0 评论 -
Nginx一次奇怪的502 报错探究
转载:https://mp.weixin.qq.com/s?__biz=MzIyMTg0OTExOQ==&mid=2247484152&idx=2&sn=8e2b9133fdf8e285e3927409464539b4&chksm=e8373188df40b89ef84fdff6f81f9b3bb42a33bdbbdc2c9aa088c14612eb270b19e...转载 2019-06-18 09:26:56 · 408 阅读 · 0 评论 -
nginx fastcgi 缓存设计缺陷导致的 502 错误
1摘要看似正常的 php-fpm 请求处理,nginx 却返回 502,出错的原因是因为 php warning 信息触发了 nginx fastcgi 缓存上的缺陷。本文详细描述了此缺陷的复现方法,最后在第7部分给出了结论和改进的办法。最后部分是基于本文内容,对 php 开发者提出的的编程小建议,它们能让大家写出更加健壮的服务。(本篇文章PC浏览器下阅读体验更佳)2...转载 2019-06-18 09:21:27 · 1332 阅读 · 0 评论 -
Nginx与PHP交互过程 + Nginx与PHP通信的两种方式
一、Nginx与PHP交互过程的7步走(用户对动态PHP网页访问过程)step1:用户将http请求发送给nginx服务器(用户和nginx服务器进行三次握手进行TCP连接)step2:nginx会根据用户访问的URI和后缀对请求进行判断step3:通过第二步可以看出,用户请求的是动态内容,nginx会将请求交给fastcgi客户端,通过fastcgi_pass将用户的请求发送给php-f...转载 2018-10-12 21:02:06 · 20797 阅读 · 1 评论 -
[面试]简介nginx的fcgi
FCGI:快速通用网关接口(Fast Common Gateway Interface),是对CGI的改进,描述了客户端和服务器之间传输数据的一种标准.FastCGI致力于减少Web服务器与CGI程式之间互动的开销,从而使服务器可以同时处理更多的Web请求。与为每个请求创建一个新的进程不同,FastCGI使用持续的进程来处理一连串的请求。这些进程由FastCGI进程管理器管理,而不是web服务器。...转载 2017-11-30 08:41:00 · 315 阅读 · 0 评论 -
Nginx原理+配置文件详解
一 Nginx简介 Nginx是一款开源代码的高性能HTTP服务器和反向代理服务器,同时支持IMAP/POP3/SMTP代理服务 1.Nginx工作原理 Nginx由内核和模块组成,完成工作是通过查找配置文件将客户端请求映射到一个location block(location是用于URL匹配的命令),location配置的命令会启动不同模块完成工转载 2018-03-31 23:33:22 · 3754 阅读 · 0 评论 -
shell脚本统计nginx访问日志access.log
核心代码:先取出所有的状态码,再筛选1-5开头的状态码 cat ${nginx_log_path} | grep -ioE "HTTP\/1\.[1|0]\"[[:blank:]][0-9]{3}"| awk '{print $2}' > ${nginx_log_awkpath} http_code_100=$(grep -o '1[0-9][0-9]' ${nginx_...转载 2018-03-23 14:48:20 · 1267 阅读 · 0 评论 -
[面试]nginx均衡的5种策略
nginx的upstream目前支持的5种方式的分配1、轮询(默认)每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。upstream backserver {server 192.168.0.14;server 192.168.0.15;} 2、指定权重指定轮询几率,weight和访问比率成正比,用于后端服转载 2017-11-21 10:47:11 · 281 阅读 · 0 评论 -
[面试]Nginx状态码499的原因及解决办法
http://www.lc365.net/blog/b/23997/499是nginx自定义的一个状态码,在src/http/ngx_http_special_response.c文件中有这个状态码的解释。494:请求头太大495:https证书错误496:https 没有证书497:http到https498:取消499:客户端关闭链接(服务器端处理的时间转载 2017-11-30 08:10:31 · 22506 阅读 · 0 评论 -
[面试]Nginx+Php-fpm运行原理详解
正向代理与反向代理、php-fpm是 FastCGI 的实现,并提供了进程管理的功能,进程包含 master 进程(1个)和 worker 进程(多个)两种进程。转载 2017-12-28 10:04:07 · 1825 阅读 · 0 评论