一、关于nginx请求包过大的解决思路

message-api.jyall.me.conf
nginx报错问题问题定位,经分析跟接入navigator后关联不大,可参考一下结论连接超时抓包分析了一下每次请求过来的数据过大,需要在location增加以下参数upstream timed out (110: Connection timed out)
proxy_connect_timeout
proxy_read_timeout
proxy_send_timeout
upstream请求连接方式,目前是短连接可配置keepalive保持连接资源复用增加keepalive 参数对比
[root@xyz-proxy-12 ~]# netstat -na |grep :8856 | wc -l
7547
增加keepalive后
[root@xyz-proxy-12 ~]# netstat -na |grep :8856 | wc -l
767
过早断开连接这个问题,跟业务场景有关系,如果对业务没有影响可忽略upstream prematurely closed connection

二、proxy_pass、set和rewrite的相互影响。

正常的用户请求: https://www.jyall.me/feedback-webapi/quality_control/statistics

最好的配置是这样滴=>

为了支持动态upstream,现在改成这样了

但是后端的upstream都是没有变的。

但是原来的请求变成这样了,一直404

nginx的日志:/feedback-webapi/quality_control/statistics-----10.0.32.153 - - [14/Sep/2017:20:18:14 +0800] "GET /feedback-webapi/quality_control/statistics HTTP/1.1" 200 48 "-" "curl/7.43.0" 0.006 - - - - - - - - application/json;charset=UTF-8 4341360345404689BDA29A906BA77F47 www.jyall.me - 0.006 10.20.96.148:8060 -

后端upstream的日志: - 10.0.38.160 - - [14/Sep/2017:20:03:32 +0800] "GET /quality-web-svr/feedback-webapi/ HTTP/1.0" 404 992

-------------------------------------------------------------------------------------------------------------

这种的后端的原始请求的nginx设置是ok的,如下:

这个可能set和proxy改写路径有关系,但是set是生效的

于是,添加了一条rewrite语句"rewrite /feedback-webapi/(.*)  /quality-web-svr/feedback-webapi/$1 break;"

然后正常的用户请求 https://www.jyall.me/feedback-webapi/quality_control/statistics就可以了。

三、

016_nginx运维问题总结的更多相关文章

  1. IT运维监控解决方案介绍

    现状 •小公司/ 创业团队< 500台服务器规模 开源方案:Zabbix.Nagios.Cacti- 云服务提供商:监控宝.oneAlert等 •BAT级别> 10万台服务器 投 ...

  2. 一切从“简”,解放IT运维人员

    运维人的神技 运维既是个技术活儿也是个苦差事,而运维人员被期望有着无限的技能:主机.存储.网络.操作系统样样精通,而且还要会写SQL.shell.开发语言java..net.python等等,对业务更 ...

  3. 马哥linux运维初级+中级+高级 视频教程 教学视频 全套下载(近50G)

    马哥linux运维初级+中级+高级 视频教程 教学视频 全套下载(近50G)目录详情:18_02_ssl协议.openssl及创建私有CA18_03_OpenSSH服务及其相关应用09_01_磁盘及文 ...

  4. IIS日志-网站运维的好帮手

    对于一个需要长期维护的网站来说,如何让网站长久稳定运行是件很有意义的事情. 有些在开发阶段没有暴露的问题很有可能就在运维阶段出现了,这也是很正常的. 还有些时候,我们希望不断地优化网站,让网站更快速的 ...

  5. 做linux运维工程师,必须要掌握以下几个工具

    linux系统如果是学习可以选用redhat或centos,特别是centos在企业中用得最多,当然还会有其它版本的,但学习者还是以这2个版本学习就行,因为这两个版本都是兄弟,没区别的,有空可以再研究 ...

  6. SQL Server 自动化运维系列

    本系列为SQL SERVER自动化运维的一些操作技巧点,所有内容都是根据日常运维过程中最经常遇到的问题,并为此形成了一些自动化运维的方式,皆为原创.... 供部分DBA和开发人员浏览借鉴,所应用平台基 ...

  7. CheungSSH国产自动化运维工具开源Web界面

    CheungSSH web2.0 发布文档 CheungSSH 简介 CheungSSH是一款国人自主研发的Linux运维自动化管理服务器软件,秉着为企业降低运营成本,解放管理员双手和自动化生产的理念 ...

  8. 自动化运维工具ansible部署以及使用

    测试环境master 192.168.16.74webserver1 192.168.16.70webserver2 192.168.16.72安装ansiblerpm -Uvh http://ftp ...

  9. 1、SQL Server自动化运维 - 备份(一)业务数据库

    为了能够恢复数据,数据库运维基础就是备份,备份自动化也是运维自动化首要进行的. 笔者的备份自动化,通过配置表快速配置为前提,同时记录备份过程,尽可能的减少人工操作.首先将SQL Server备份按用途 ...

随机推荐

  1. elasticsearch 安装、配置

    elasticsearch:基于java开发,基于RESTful web 接口,提供分布式多用户能力的全文搜索引擎. elasticsearch 安装: 1. java SE Development ...

  2. SpaceVim的基本安装和常见问题

    SpaceVim官网:https://spacevim.org/ SpaceVim中文官网:http://spacevim.org/cn/ SpaceVim的Github页面:https://gith ...

  3. 最短路算法--SPFA+嵌套map

    hdu 2066   #include<iostream> #include<cstdio> #include<cstring> #include<queue ...

  4. maven install deploy tell us heap is full

    <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compi ...

  5. byteify

    byteify函数 Python自带的Json库会把json文件load成Unicode对象. 如果想要变成str对象的话,就要自己去encode. def byteify(input): if is ...

  6. 十、java_IO

    目录: 一.java流式输入/输出原理 二.java流类的分类 三.输入/输出流类 四.常见的节点流和处理流 五.文件流 六.缓冲流 七.数据流 八.转换流 九.Print流 十.Ubject流 一. ...

  7. toogle

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. jsp中的request.getContextPath()

    jsp中的request.getContextPath()   <%=request.getContextPath()%>是为了解决相对路径的问题,可返回站点的根路径. 但不用也可以吧,比 ...

  9. Grafana的基本使用

    Grafana的基本使用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 简单的来说,Grafana 是基于JS开发的,功能齐全的度量仪表盘和图形编辑器,帮助开发人员发现问题的工具. ...

  10. 面向对象【day07】:类的继承(七)

    本节内容 1.概述 2.类的继承 3.总结 4.练习 一.概述 之前我们说到了类的公有属性和类的私有属性,其实就是类的封装,下面我们来讲讲继承,是面向对象的第二大特性. 面向对象编程 (OOP) 语言 ...