499 502错误

线上系统,大量499,502错误。为了本地模拟,需要安装nginx,借助postman模拟并发请求。共需要以下步骤:1.安装nginx,需要首先安装openssl;2.配置nginx转发规则;3.postman模拟大并发;4.借助mat等工具分析是否内存泄漏等。

openssl安装

https://blog.csdn.net/qyee16/article/details/72799852

git clone https://github.com/openssl/openssl
sudo ./config --prefix=/usr/local/openssl
make
make install
查看版本
openssl version

nginx安装

首先注意:pcre(需要使用低版本,高版本的不需要不支持)
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
不要pcre2版本

$  sudo ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-cc-opt="-Wno-deprecated-declarations" --with-pcre=/Users/yangyangrenren/Downloads/pcre-8.43 --with-openssl=/usr/local/openssl

nginx配置转发

注意,在配置时候,对于server name,不要随便用,除非在本地的hosts中有配置,否则将无法识别server name。

server {  
        listen       80;  
        server_name  8081.max.com;  
  
        #charset koi8-r;  
  
        #access_log  logs/host.access.log  main;  
  
        location / {  
            proxy_pass   http://tomcatserver1;  
            index  index.html index.htm;  
        }       
    }  

cp: conf/koi-win' and/usr/local/nginx/conf/koi-win’ are the same file

解决办法

将这一步改一下

./configure --prefix=/usr/local/nginx

TO

./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/nginx.conf

499

前端

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <script src="http://www.w3school.com.cn/jquery/jquery-1.11.1.min.js"></script>
  <script>
    $(document).ready(function(){
      $("button").click(function(){
        $.ajax({
          url : 'http://localhost/demo/realtime_data/queuing_info?sellerId=aaaaaaa',
          timeout : 10000,
          type : 'get',
          dataType : 'json',
          beforeSend : function(request) {
            request.setRequestHeader("Authorization", "KGRwMQpTJ2V4cGlyZXNfaW4nCnAyCmNkYXRldGltZQp0aW1lZGVsdGEKcDMKKEk3CkkwCkkwCnRScDQKc1MnY3JlYXRlZF9hdCcKcDUKY2RhdGV0aW1lCmRhdGV0aW1lCnA2CihTJ1x4MDdceGUzXHgwNlx4MDRcbjNcclxuPCwnCnRScDcKc1MncG9yY2hfdG9rZW4nCnA4ClZjY2ZmZWQ2MDVkODc0ODhiOTYyMjE1Yjk4N2I2ZDA2Yy02OTFmMDcxNjBhNTM0MzlmOGE2MTBjOTg2NWI5YmFhOApwOQpzUyd1c2VyX2lkJwpwMTAKVjVhN2JmMjY4MjAzYzQ2MDZmNThhZjAyNQpwMTEKc1Mnc3Vic3lzdGVtX2FsaWFzJwpwMTIKUydldmEnCnAxMwpzLg==--5cb7169cd21fdb4b2ed658f272dcc71c72b4806eaf64ba6c0e8caf6febc1db23");
          },
          success : function(data){
            alert('success');
          }
        });
      });
    });
  </script>
</head>
<body>

<button>ajax带超时时间请求</button>
</body>
</html>

后台接口

@GetMapping("/test")
    public String test(HttpServletResponse response) throws InterruptedException {
        Thread.sleep(100*1000);
        return "hello";
    }

nginx

location /demo/ {
            access_log  /usr/local/var/log/nginx/host.access.log  main;
            proxy_pass http://localhost:8080/demo/ ;
        }

log日志

127.0.0.1 - - [04/Nov/2017:01:11:29 +0800] "GET /demo/test HTTP/1.1" 499 0 "http://localhost:8888/demo.html" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" "-"
127.0.0.1 - - [04/Nov/2017:01:11:42 +0800] "GET /demo/test HTTP/1.1" 499 0 "http://localhost:8888/demo.html" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" "-"
127.0.0.1 - - [04/Nov/2017:01:11:58 +0800] "GET /demo/test HTTP/1.1" 499 0 "http://localhost:8888/demo.html" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" "-"
java -Xmx4000m -jar application-1.0-SNAPSHOT.jar 

参考链接:

  1. https://zhuanlan.zhihu.com/p/30831419
    2.https://segmentfault.com/a/1190000011853336

猜你喜欢

转载自blog.csdn.net/yangyangrenren/article/details/90776339