• Spring Boot优化


       针对目前的容器优化,目前来说没有太多地方,需要考虑如下几个点:

    • 线程数
    • 超时时间
    • jvm优化   

       首先线程数是一个重点,初始线程数和最大线程数,初始线程数保障启动的时候,如果有大量用户访问,能够很稳定的接受请求, 而最大线程数量用来保证系统的稳定性,而超时时间用来保障连接数不容易被压垮,如果大批量的请求过来,延迟比较高,不容易把线程打满。这种情况在生产中是比较常见的。一旦网络不稳定,宁愿丢包也不愿意把机器压垮。

     JVM优化一般来说没有太多场景,无非就是加大初始的堆,和最大限制堆,当然也不是无限增大,根据的情况进行调节

     一、线程数设置

    server:
      tomcat:
        max-threads: 100
        min-spare-threads: 20
        connection-timeout: 5000
      ssl:
        key-store: classpath:.keystore
        key-store-type: JKS
        key-password: qq123456
        key-alias: tomcat
      port: 8443

    二、JVM设置

     1)设置内存初始值

    java -Xms10m -Xmx80m -jar xxx.jar & (m说明为MB,否则为KB)
    -Xms:初始值
    -Xmx:最大值
    -Xmn:最小值
    

    2)时区设置

    java -jar -Duser.timezone=GMT+08 xxx.jar &
    

    3)检查堆栈信息

    jps 查看PID
    jmap -histo PID|head

     备注:如果有jar包中包含jar或者jar包中包含class文件,那么会使用!/分隔开,这种方式只有org.springframework.boot.loader.jar.Handler能处理,它是SpringBoot内部扩展出来的一种URL协议。

    jar:file:/xxx.jar!/lib/spring-boot-loader.jar
    

    三、内嵌Tomcat优化

     SpringBoot优化内嵌的Tomcat ---设置MaxConnections,参见:http://www.cnblogs.com/softidea/p/5751596.html

     https设置参见:http://mojijs.com/2016/11/220956/index.html

     BIO及NIO设置参见:https://my.oschina.net/u/252181/blog/832562

  • 相关阅读:
    倒计时模块(获取的是服务器上的时间——适合购物网站的抢购模块)
    javascript 双色球选号器
    最短AJAX创建代码
    poj2387 Til the Cows Come Home
    POJ2236 Wireless Network
    HDU2102 A计划
    HDU2028 Lowest Common Multiple Plus
    HDU2612 Find a way
    HDU1495 非常可乐
    UVa10603 Fill
  • 原文地址:https://www.cnblogs.com/moonandstar08/p/7554570.html
Copyright © 2020-2023  润新知