项目上线,准备进行压力测试,自己写了个测试工具,对项目的某个接口进行压测;

    服务器配置 : 阿里云 centos7  2核 8g 

    运行项目关系:

      接口---》zuul 处理--》consumer项目 --》实际处理业务项目

    通过测试工具压力测试,发现只要上20就会提示服务器异常,发现有些默认值是20,所以把自己的一些处理方法整理一下,作为以后借鉴。

     

    1,zuul 优化配置如下:

    ribbon:
      ReadTimeout: 15000
      ConnectTimeout: 15000
      MaxAutoRetries: 0 ##最大允许重试次数
      MaxAutoRetriesNextServer: 1 ##切换重试实例个数
    zuul:
      host:
        connect-timeout-millis: 20000
        socket-timeout-millis: 20000
        max-per-route-connections: 500
        max-total-connections: 2000
        ##信号量默认100,此处不设置,只要并发达到100就会提示无法获取semaphonre
      semaphore:
        max-semaphores: 2000

    2. consumer项目,此项目主要是处理与业务相关的接口,合成接口。所以使用了hystrix,ribbion

    ###############
    feign:
      hystrix:
        enabled: true
      httpclient:
        enabled: true
        max-connetctions: 2000
        max-connections-per-route: 500
      okhttp:
        enabled: false
    ribbon:
      ReadTimeout: 15000
      ConnectTimeout: 15000
      MaxAutoRetries: 0
      MaxAutoRetriesNextServer: 1
    hystrix:
      threadpool:
        SERVICEMEMBER:
          coreSize: 500
          maximumSize: 1000
      command:
        SERVICEMEMBER: ##自己定义的服务名,单独设置参数
          fallback:
            ### 是否启用降级服务。默认true
            enabled: false
    
          ## 是否使用断路器来跟踪其健康指标和熔断请求,默认true
          circuitBreaker:
            enabled: true
            ##一个统计窗口内熔断触发的最小个数/10s
            requestVolumeThreshold: 500
            ##熔断多少秒后去尝试请求
            sleepWindowInMilliseconds: 5000
            ###失败率达到多少百分比后熔断
            errorThresholdPercentage: 80
          execution:
            isolation:
              thread:
                timeoutInMilliseconds: 20000
              strategy: THREAD
        default: ##默认其他服务使用参数
          fallback:
            ### 是否启用降级服务。默认true
            enabled: false
    
            ## 是否使用断路器来跟踪其健康指标和熔断请求,默认true
          circuitBreaker:
            enabled: true
            ##一个统计窗口内熔断触发的最小个数/10s
            requestVolumeThreshold: 2000
            ##熔断多少秒后去尝试请求
            sleepWindowInMilliseconds: 5000
            ###失败率达到多少百分比后熔断
            errorThresholdPercentage: 80
    
          execution:
            isolation:
              thread:
                timeoutInMilliseconds: 20000
              strategy: THREAD

     

    以上,记录下来。

     

     

     

     

     

     

    联系QQ:343886028 --加QQ群 145315854