nginx 配合jersey+netty的奇怪问题
角色
client
proxy nginx
server jersey+netty
问题表现
client 直接请求server 正常,返回准确json数据 jsondat
client->nginx->server 经过nginx,则请求长时间阻塞,直到超时返回异常数据 "2000\r\n{jsondata}\"��"
头尾都异常
问题原因
正常情况 nginx->server 拿到数据,判断传输中止,则nginx->client把数据返回给客户端
现状态
nginx-server 拿到数据,但无法判断出数据已中止,一直拿着数据,直到超时,加上异常信息,传给client
判断中止的条件,不外乎
Content-Length/Chunked
server和nginx配合有瑕疵,显然是nginx 对chunked处理有误。
chunked总体是http1.1里的内容,这是nginx的缺陷,而nginx理应没有这个问题
很大的可能是版本过低
经确认
服务器
nginx version: nginx/1.0.15
确认是nginx版本过低导致
http://nginx.org/en/docs/faq/chunked_encoding_from_backend.html
https://serverfault.com/questions/159313/enabling-nginx-chunked-transfer-encoding/187573#187573
升级至1.12.0
另nginx部分版本默认设置还是1.0,需要单独设置1.1
问题解决
nginx都支持http2.0了,公司的版本连1.1都支持!
nginx 配合jersey+netty的奇怪问题的更多相关文章
- 建议使用nginx配合uwsgi,
试试gunicorn+supervisor+nginx. gunicorn是Python实现的的Web server,配置也比较简单. supervisor也是Python实现的,它用于进程管理. 这 ...
- nginx配合modsecurity实现WAF功能
一.准备工作 系统:centos 7.2 64位.nginx1.10.2, modsecurity2.9.1 owasp3.0 1.nginx:http://nginx.org/download/ng ...
- nginx配合zabbix编译安装时web下一步跳转问题
很多时候编译安装的时候把zabbix的php包拷贝到web所在目录之后(本文为nginx所在html目录),网页打开http:/localhost/zabbix却进不去下图: 或者是点了下一步没反应, ...
- nginx配合IIS实现简单负载均衡
1.IIS 部署两个站点端口分别为8081和8082 8081站点和8082站点如下[随便写了个没有样式的很丑的页面],我特意加了111和222区分 2.设置nginx配置文件,实现简单的负载 ...
- nginx配合gotty的websocket连接配置
由于gotty我作了url加密, 所以url在nginx里的前缀要能替换才行. 配置关键就在于有没有/ #user nobody; worker_processes 1; #error_log log ...
- Centos7下,宿主机nginx配合docker环境的php-fpm
一.安装docker并启动 yum install docker systemctl start docker 二.安装nginxCentOS 7默认不能从yum中安装nginx,原因可以自己搜索一下 ...
- VUE开发(二)nginx配合vue来实现前后端分离部署
一.引言 由于本地是采用vue+spring boot实现的前后端分离项目,本机启动的时候先启动后场服务,再单独启动vue工程,然后可以实现全流程贯穿,但是我们要部署到服务器上的时候,一般都是打一个j ...
- windows下nginx配合nodejs进行反向代理
本文原创,转载请附上原作者链接!https://www.cnblogs.com/LSWu/articles/14848324.html 1.安装node.js 从node.js官网上下载node.js ...
- 在UWSGI和NGINX配合的情况下,配置个别目录上传及超时
笨办法就是多加一个LOCATION. 然后,自定义以下类似参数 client_max_body_size uwsgi_connect_timeout uwsgi_read_timeout server ...
随机推荐
- 菜鸟理解Lamdba表达式
简单的说就是Java 1.8后给出个简化代码的方式, Java面向对象过分强调必须通过对象的形式来完成任务,而函数思想则尽量忽略面向对象的复杂语法,强调做什么,而不是以什么形式做. 举个栗子! 首先创 ...
- OI常用模板
long long qpow(long long a,long long b,int mod) { ; while (b) { ) res=res*a%mod; a=a*a%mod; b>> ...
- VLOOKUP返回#N/A结果
VLOOKUP返回#N/A结果 1.无目标值 使用control+f查找是否存在所要搜索的值. 2.位置错误 所要搜索区域,被搜索值必须在首列. 3.格式错误 搜索值和被搜索区域格式需一致. 4.特殊 ...
- SUCTF 2019-EasySQL
0x00 知识点: 1:堆叠注入 2:sql_mode : 它定义了 MySQL 应支持的 SQL 语法,以及应该在数据上执行何种确认检查,其中的 PIPES_AS_CONCAT 将 || 视为字符串 ...
- git本地代码回滚
git本地操作有时会有误删误改并提交的时候,此时可以通过回滚获得之前的特定版本 1. 查看log 输入 git log 查看commit记录 [xxxxxxx]$ git log 结果大致如下(根 ...
- promise核心技术 2.两种回调函数 js中error的处理
抽空详细学习一下什么是回调函数(一个回调函数,也被称为高阶函数) 1.什么样的函数是回调函数 自己定义的(sittimeout不是自己定义的) 没有调用 自己执行 1.同步回调与异步回调函数 同步回调 ...
- pytorch安装及基本用法
20180425更新 安装pytorch0.4.0: conda uninstall pytorch # 如果是CUDA版本的话 conda uninstall cuda80 cuda90 # 如果 ...
- Navicat Premium 12.0.18 安装与激活
Navicat Premium 12.0.18中文版 百度云链接:https://pan.baidu.com/s/1HHOOlQbbWAL-MlI908n4MQ 提取码:k9w6 1.下载好后双击运行 ...
- JSP变量、方法和类的声明,JSP程序片,JSP表达式
参考文章 http://c.biancheng.net/view/1431.html http://c.biancheng.net/view/1433.html http://c.biancheng. ...
- 字符串编码研究:Unicode
Unicode Unicode 编码系统可分为编码方式和实现方式两个层次. 1.编码方式 Unicode字符平面映射定义了所有的Unicode字符集. 2.实现方式(UTF8,UTF16) UTF-8 ...